-
-
Notifications
You must be signed in to change notification settings - Fork 7.2k
[Benchmark] Add single turn MTBench to Serving Bench #17202
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
Conversation
👋 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 🚀 |
Here is the offline serving bench. The TPOT of llama 3.1 is 7.5ms which matches 133 tokens/s obtained from Online serving is slower than offline serving for EAGLE-3. Earlier the numbers for both EAGLE-1/3 were quite low because |
Hi @ekagra-ranjan, thanks for the PR! This is wonderful and so useful! A few things to note:
We may need to benchmark the performance again once the two PRs are landed, which should be soon |
https://github.com/vllm-project/vllm/blob/9d98ab5ec/examples/offline_inference/eagle.py#L14-L18 # noqa: E501 | ||
""" | ||
|
||
DEFAULT_OUTPUT_LEN = 256 # avg len used in SD bench in vLLM |
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.
QQ: Which SD bench do you mean?
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.
I was refering to the offline eagle bench. Lmk if you would like me to clarify this in the comment
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.
oh I think it's quite random then. What about using longer outputs like 1K+?
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.
1K would make the MTBench run 4x longer. My experience so far has been that 256 is good enough to know the inference metrics and doesnt change much with longer output len with MTBench.
Co-authored-by: Woosuk Kwon <[email protected]>
@ekagra-ranjan Please fix the lint errors. :) |
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.
LGTM. Thanks for the PR!
This PR adds single turn MTBench to benchmark datasets.
We have been using single turn MTBench for EAGLE bench using
/offline_inference/eagle.py
. However, it outputs output/s which does not ignore the TTFT. To measure TPOT we have to usebenchmark_serving.py
. We already have a lot of results on MTBench for different EAGLE settings so this PR adds MTBench to serving benchmark to measure TPOT.bench cmd
VANILLA
serve cmd
Result
EAGLE-1
serve cmd
Result
EAGLE-3
serve cmd
Result
cc: @LiuXiaoxuanPKU