[PR #313] [MERGED] Fix the address of dispatch_rdma_recv_count_buffer in LL Layout to avoid cleaning after each change in hidden_size/token_num. #518

Closed
opened 2026-10-27 21:03:35 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/deepseek-ai/DeepEP/pull/313
Author: @yilin-void
Created: 7/18/2025
Status: ✅ Merged
Merged: 7/29/2025
Merged by: @sphish

Base: main ← Head: better_layout_rebase


📝 Commits (1)

  • d42e50d Fix the address of dispatch_rdma_recv_count_buffer to avoid cleaning after each change in hidden_size/token_num.

📊 Changes

1 file changed (+9 additions, -8 deletions)

View changed files

📝 csrc/config.hpp (+9 -8)

📄 Description

Each time the hidden_size or num_max_dispatch_tokens_per_rank in LL dispatch/combine changes, the address of dispatch_rdma_recv_count_buffer also changes. This causes the address pointed to by next_clean in the previous kernel to not be actually used, necessitating an additional clean operation (e.g., calling clean_low_latency_buffer).

In this PR, I have placed the dispatch_rdma_recv_count_buffer that needs to be cleaned at the beginning of the entire RDMA buffer (aligned to 128B to ensure cacheline alignment). This ensures that regardless of changes in hidden_size or num_max_dispatch_tokens_per_rank, as long as num_experts remains the same, the correct dispatch_rdma_recv_count_buffer address will always be cleaned.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/deepseek-ai/DeepEP/pull/313 **Author:** [@yilin-void](https://github.com/yilin-void) **Created:** 7/18/2025 **Status:** ✅ Merged **Merged:** 7/29/2025 **Merged by:** [@sphish](https://github.com/sphish) **Base:** `main` ← **Head:** `better_layout_rebase` --- ### 📝 Commits (1) - [`d42e50d`](https://github.com/deepseek-ai/DeepEP/commit/d42e50d618a3dc671d24647f62ab348267c70ce2) Fix the address of dispatch_rdma_recv_count_buffer to avoid cleaning after each change in hidden_size/token_num. ### 📊 Changes **1 file changed** (+9 additions, -8 deletions) <details> <summary>View changed files</summary> 📝 `csrc/config.hpp` (+9 -8) </details> ### 📄 Description Each time the `hidden_size` or `num_max_dispatch_tokens_per_rank` in LL dispatch/combine changes, the address of `dispatch_rdma_recv_count_buffer` also changes. This causes the address pointed to by `next_clean` in the previous kernel to not be actually used, necessitating an additional clean operation (e.g., calling `clean_low_latency_buffer`). In this PR, I have placed the `dispatch_rdma_recv_count_buffer` that needs to be cleaned at the beginning of the entire RDMA buffer (aligned to 128B to ensure cacheline alignment). This ensures that regardless of changes in `hidden_size` or `num_max_dispatch_tokens_per_rank`, as long as `num_experts` remains the same, the correct `dispatch_rdma_recv_count_buffer` address will always be cleaned. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-27 21:03:35 +00:00
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
deepseek-ai/DeepEP#518
No description provided.