Skip to content

[MoE] enable all2all fi_one_sided by default - #53311

Open
arpera wants to merge 1 commit into
vllm-project:mainfrom
arpera:enable-all2all-one-sided-by-default
Open

[MoE] enable all2all fi_one_sided by default#53311
arpera wants to merge 1 commit into
vllm-project:mainfrom
arpera:enable-all2all-one-sided-by-default

Conversation

@arpera

@arpera arpera commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Purpose

Enable flashinfer_nvlink_one_sided backend for all2all by default. As performance e2e tests show, flashinfer_nvlink_one_sided outperforms current default backend for all2all allgather_reducescatter by 8% on disaggregated serving of Qwen3.5 397B NVFP4.

Test Result

Disaggregated serving of Qwen3.5 397B NVFP4 on GB200 cluster

Recipe for srt-slurm: agrs-qwen35-disagg-gb200.yaml

============ Serving Benchmark Result ============
Successful requests:                     16384
Benchmark measurement start (UTC):       2026-08-21T13:58:46.909140+00:00
Benchmark measurement end (UTC):         2026-08-21T14:04:17.983068+00:00
Benchmark duration (s):                  331.07
Total input tokens:                      134217728
Total generated tokens:                  16777216
Request throughput (req/s):              49.49
Output token throughput (tok/s):         50675.14
Peak output token throughput (tok/s):    55616.60
Total Token throughput (tok/s):          456076.23
---------------Time to First Token----------------
Mean TTFT (ms):                          3617.93
Median TTFT (ms):                        1164.76
P99 TTFT (ms):                           33376.05
-----Time per Output Token (excl. 1st token)------
Mean TPOT (ms):                          35.46
Median TPOT (ms):                        36.54
P99 TPOT (ms):                           36.58
---------------Inter-token Latency----------------
Mean ITL (ms):                           3297.61
Median ITL (ms):                         3649.41
P99 ITL (ms):                            3674.07
----------------End-to-end Latency----------------
Mean E2EL (ms):                          39891.64
Median E2EL (ms):                        38481.03
P99 E2EL (ms):                           69761.65
==================================================

Recipe for srt-slurm: onesided-qwen35-disagg-gb200.yaml

============ Serving Benchmark Result ============
Successful requests:                     16380
Benchmark measurement start (UTC):       2026-08-21T13:55:26.660008+00:00
Benchmark measurement end (UTC):         2026-08-21T14:00:30.608585+00:00
Benchmark duration (s):                  303.95
Total input tokens:                      134184960
Total generated tokens:                  16773120
Request throughput (req/s):              53.89
Output token throughput (tok/s):         55184.07
Peak output token throughput (tok/s):    61702.70
Total Token throughput (tok/s):          496656.66
---------------Time to First Token----------------
Mean TTFT (ms):                          6216.73
Median TTFT (ms):                        3186.26
P99 TTFT (ms):                           33960.10
-----Time per Output Token (excl. 1st token)------
Mean TPOT (ms):                          29.21
Median TPOT (ms):                        30.31
P99 TPOT (ms):                           30.54
---------------Inter-token Latency----------------
Mean ITL (ms):                           2716.92
Median ITL (ms):                         3030.37
P99 ITL (ms):                            3062.17
----------------End-to-end Latency----------------
Mean E2EL (ms):                          36102.81
Median E2EL (ms):                        34085.26
P99 E2EL (ms):                           62558.25
==================================================

Total Token throughput +8% for flashinfer_nvlink_one_sided.


Essential Elements of an Effective PR Description Checklist
  • The purpose of the PR, such as "Fix some issue (link existing issues this PR will resolve)".
  • The test plan, such as providing test command.
  • The test results, such as pasting the results comparison before and after, or e2e results
  • (Optional) The necessary documentation update, such as updating supported_models.md and examples for a new model.

Signed-off-by: Artem Perevedentsev <aperevedents@nvidia.com>

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Claude Code Review

This pull request is from a fork — automated review is disabled. A repository maintainer can comment @claude review to run a one-time review.

@vadiklyutiy vadiklyutiy added the ready ONLY add when PR is ready to merge/full CI is needed label Aug 21, 2026
@github-actions

Copy link
Copy Markdown

@arpera, CI is now available for this PR.

  • /ci run starts upstream CI; /amd-ci run starts AMD CI only.
  • /ci retry retries failed jobs in the CI build for the current PR head. If the current head has no CI build, it starts a new CI build for the current head containing only jobs that failed in the latest earlier CI build for this PR.
  • /amd-ci retry retries failed jobs in AMD CI for the current PR head. Use /amd-ci run when the current head has no AMD CI build.
  • /ci cancel cancels scheduled or running CI builds for this PR branch; /amd-ci cancel does the same for AMD CI only.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready ONLY add when PR is ready to merge/full CI is needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants