Skip to content

[QST] What is the typical token load (S) used in the e2e benchmark? #6

Description

@Rachmanino

Hi authors, thanks for your great work. The idea of dynamic balanced EP is rather intriguing.

The README shows an end-to-end training benchmark comparing MoonEP vs DeepEP v2 on H20 with EP=8, sweeping maxvio. However, it does not state the number of input tokens per rank S (or equivalently,
global batch size / sequence length) used in that benchmark.

This matters because MoonEP's benefit model is:

  • Benefit: eliminating compute hotspots caused by routing imbalance
  • Cost: NVLink-based weight prefetch (bandwidth ~450 GB/s on H20) vs. local HBM reads (~4 TB/s)

If I understand correctly, at small S (few tokens per expert), the workload is memory-bound on expert weights. In that regime, prefetching weights over NVLink is strictly more expensive than reading them locally, and there is
little compute imbalance to eliminate. The crossover point where MoonEP's balance benefit outweighs its prefetch cost depends directly on S.

Questions:

  1. What value of S (tokens per rank) was used in the e2e benchmark?
  2. Was the benchmark run in a compute-bound or memory-bound regime per expert?
  3. Is there data or a rough estimate for the minimum S below which MoonEP's overhead exceeds its benefit (i.e., the break-even point)?

This would help users decide whether MoonEP is appropriate for their workload, particularly for inference or small-batch training scenarios.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions