mirror of
https://github.com/microsoft/mscclpp.git
synced 2026-07-15 11:44:56 +00:00
## Summary Replaces the deterministic `(t*K+j) % E` expert assignment in `mscclpp_ep_bench.cu` with the same randomized top-k routing scheme used by the NCCL-EP benchmark, so the C++ LL benchmark exercises a realistic, non-uniform expert distribution. ## Changes - Per-token scores drawn from `|N(0,1)| + 1` with a rank-seeded `std::mt19937(1+rank)`. - `std::partial_sort` selects the top-K experts per token (descending). - Randomly masks 10 (token, slot) positions to `-1` to exercise the LL kernels' invalid-index handling (guarded at `low_latency.cu:278` and `:726`). - Byte accounting now counts only valid (`>= 0`) selections. - Added `<random>` / `<utility>` includes; clang-format-14 clean. --------- Co-authored-by: Binyang Li <binyli@microsoft.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>