Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request addresses a serialization issue in the AscendStore lookup RPC where block hashes were being incorrectly converted to hexadecimal strings. By preserving the original byte representation during transmission, the change prevents potential type errors in internal hash operations and improves serialization efficiency. The update ensures that the internal contract for block hashes is maintained consistently across the client-server boundary. Highlights
New Features🧠 You can now enable Memory (public preview) to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize the Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
Suggested PR Title:
[Ops][Misc] Simplify block hash encoding in pool schedulerSuggested PR Summary:
### What this PR does / why we need it?
This PR simplifies the block hash encoding process in the pool scheduler by directly encoding raw block hashes instead of converting them to hex strings first. It also renames variables for consistency and updates the unit tests to verify the encoding calls.
### Does this PR introduce _any_ user-facing change?
No.
### How was this patch tested?
Updated unit tests in `test_pool_scheduler.py` to assert the correct arguments are passed to the encoder.I have no additional feedback to provide as there are no review comments.
|
👋 Hi! Thank you for contributing to the vLLM Ascend project. The following points will speed up your PR merge:
If CI fails, you can run linting and testing checks locally according Contributing and Testing. Tip 💡 Consider Linking a Related Issue or RFCYour PR title contains the [BugFix] tag, indicating a bug fix or new feature. Linking a related issue or RFC in the PR description is strongly encouraged — it gives reviewers helpful context and speeds up the review. You can use any of these keywords:
🙏 Thanks for helping us keep the project well-organized! |
…undary) Signed-off-by: yiyue.jc <yiyue.jc@antgroup.com>
ae8895f to
88e4d32
Compare
|
Updated the implementation to normalize decoded hex hashes at the LookupKeyServer boundary. The previous client-side serialization change has been fully removed; the existing RPC wire format is unchanged. |
What this PR does / why we need it?
LookupKeyClientserializes vLLMBlockHashvalues as hexadecimal strings forthe ZMQ lookup RPC. After msgpack decoding,
LookupKeyServerforwarded thosestrings directly to
KVPoolWorker.lookup_scheduler(), although downstreamgrouped-hash code expects bytes-like
BlockHashelements.In a v0.23.0rc1-based AscendStore deployment with the grouped-hash changes from
#12814 and #13110 backported, this produced:
The lookup exception handler then returned zero external-cache hits.
This PR fixes the type mismatch at the ZMQ decode boundary, without changing
the existing RPC protocol:
bytes.fromhex().As a result, all internal lookup paths receive bytes-like block hashes while
the scheduler-side serialization and wire format remain unchanged.
Does this PR introduce any user-facing change?
No public API, configuration, RPC framing, or cache-key format changes. The fix
prevents affected AscendStore lookups from failing and degrading to zero cache
hits.
How was this patch tested?
LookupKeyServerregression test that feeds a 64-character hex hashthrough the decoded ZMQ request and verifies that
lookup_scheduler()receives the corresponding 32-byte
BlockHash.worker receives
str, and passes after the boundary conversion is added.server, connector, and byte/string key construction paths.
ruff check,ruff format --check, andgit diff --checkon the changedfiles.
No NPU hardware is required for this RPC type-conversion fix.