mirror of
https://github.com/deepseek-ai/DeepEP.git
synced 2026-11-05 00:47:32 +00:00
[GH-ISSUE #40] Why do we need to disable NVSHMEM_IB_ENABLE_RELAXED_ORDERING? #37
Labels
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
deepseek-ai/DeepEP#37
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Tuvie on GitHub (Mar 4, 2025).
Original GitHub issue: https://github.com/deepseek-ai/DeepEP/issues/40
Hi,
There is a new commit recently which disable NVSHMEM_IB_ENABLE_RELAXED_ORDERING in buffer.py:
github.com/deepseek-ai/DeepEP@3885404ffbGenerally, we think relaxed ordering can help to improve the performance.
Do we have some reasons to disable it? What does it mean that "avoid out-of-order messages"?
Thanks
@wx-csy commented on GitHub (Mar 4, 2025):
This is actually a hack to the Infiniband protocol. According to the Infiniband specification, two consecutive
WRITEoperations are allowed to be reordered, i.e., the responder might see the second write before the first one. From the implementation perspective, this might happen in at least the following two places:To prevent reordering, we disable AR to prevent the first case and disable
RELAXED_ORDERINGto prevent the second case.@Tuvie commented on GitHub (Mar 4, 2025):
Thanks for you reply.
Is this only necessary for normal internode mode? Or it is also necessary for both normal and low latency mode?
@wx-csy commented on GitHub (Mar 4, 2025):
It is only necessary for normal mode as LL mode uses a standard-compliant way to prevent reordering.
@Tuvie commented on GitHub (Mar 4, 2025):
Thanks.