[GH-ISSUE #436] notify_dispatch and cached_notify in normal mode. #290

Closed
opened 2026-10-26 09:58:05 +00:00 by bsakaguchi · 3 comments
Owner

Originally created by @MaoZiming on GitHub (Sep 27, 2025).
Original GitHub issue: https://github.com/deepseek-ai/DeepEP/issues/436

Hi, I am wondering why compared to low latency mode, normal mode needs additional synchronization primitives, such as nvshmem_sync_with_same_gpu_idx and nvshmemi_ibgda_quiet for flushing, whereas low latency mode does not have that.
Can normal mode follow low latency mode in not using these primitives?

Originally created by @MaoZiming on GitHub (Sep 27, 2025). Original GitHub issue: https://github.com/deepseek-ai/DeepEP/issues/436 Hi, I am wondering why compared to low latency mode, normal mode needs additional synchronization primitives, such as `nvshmem_sync_with_same_gpu_idx` and `nvshmemi_ibgda_quiet` for flushing, whereas low latency mode does not have that. Can normal mode follow low latency mode in not using these primitives?
Author
Owner

@a1372422617 commented on GitHub (Sep 28, 2025):

Because the normal mode needs to ensure that the preceding RDMA operations are written to disk, it uses a barrier to guarantee that all GPUs have reached the synchronization point before clearing the flag to zero

<!-- gh-comment-id:3342287320 --> @a1372422617 commented on GitHub (Sep 28, 2025): Because the normal mode needs to ensure that the preceding RDMA operations are written to disk, it uses a barrier to guarantee that all GPUs have reached the synchronization point before clearing the flag to zero
Author
Owner

@MaoZiming commented on GitHub (Sep 29, 2025):

Thanks for the answer. What do you mean by "written to disk"? I am wondering why low latency mode does not need these primitives

<!-- gh-comment-id:3347959826 --> @MaoZiming commented on GitHub (Sep 29, 2025): Thanks for the answer. What do you mean by "written to disk"? I am wondering why low latency mode does not need these primitives
Author
Owner

@sphish commented on GitHub (Oct 10, 2025):

The low-latency mode uses a double-buffer design specifically to avoid relying on these synchronization primitives. In contrast, the normal kernel does not use double buffering — this is a trade-off between GPU memory usage and latency.

<!-- gh-comment-id:3388346031 --> @sphish commented on GitHub (Oct 10, 2025): The low-latency mode uses a double-buffer design specifically to avoid relying on these synchronization primitives. In contrast, the normal kernel does not use double buffering — this is a trade-off between GPU memory usage and latency.
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#290
No description provided.