-
-
Notifications
You must be signed in to change notification settings - Fork 10.6k
Handle non-serializable objects in vllm bench #21665
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Handle non-serializable objects in vllm bench #21665
Conversation
Signed-off-by: Huy Do <[email protected]>
👋 Hi! Thank you for contributing to the vLLM project. 💬 Join our developer Slack at https://slack.vllm.ai to discuss your PR in #pr-reviews, coordinate on features in #feat- channels, or join special interest groups in #sig- channels. Just a reminder: PRs would not trigger full CI run by default. Instead, it would only run Once the PR is approved and ready to go, your PR reviewer(s) can run CI to test the changes comprehensively before merging. To run CI, PR reviewers can either: Add 🚀 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request adds a default handler to json.dump
to handle non-serializable objects in benchmark results. A suggestion has been made to also handle NaN
values by adding allow_nan=True
to the json.dump
call.
Thanks so much for the fix! @huydhn anywhere else on top of your mind that we should double check? |
IMO, for changes w.r.t
The benchmark signals from https://github.com/pytorch/pytorch-integration-testing/actions/workflows/vllm-benchmark.yml have proved useful to catch some non-blocking issues like this one or #21476 (comment). So, I plan to setup a notification next when it starts failing. |
Signed-off-by: x22x22 <[email protected]>
Signed-off-by: Jinzhen Lin <[email protected]>
Signed-off-by: Paul Pak <[email protected]>
Signed-off-by: Diego-Castan <[email protected]>
Essential Elements of an Effective PR Description Checklist
Purpose
#13993 added
vllm bench
cli but it has a small bug in how it fails to handle non-serializable objects when writing the benchmark results. The bug has been fixed in the nightly benchmark script in #19114, butvllm bench
command didn't have the fix yet. This PR brings the same fix from #19114 over.The issue https://github.com/pytorch/pytorch-integration-testing/actions/runs/16541559146/job/46783496249#step:14:3335 manifested in nightly benchmark run after #21355 started to switch to
vllm bench
in nightly benchmark without bringing over the fix in #19114. The code underbenchmarks
will be cleaned up in the future anyway, but I leave it to @yeqcharlotte to decide on the timing instead of cleaning them up here.Test Plan
I'll post the benchmark run using the code from this PR in a min.
cc @yeqcharlotte @houseroad @simon-mo