Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions deep_gemm/include/deep_gemm/ptx/ld_st.cuh
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,11 @@ struct SM100_U8x8_STSM_T {
}
};

/// Memory ordering
CUTLASS_DEVICE void fence_acq_rel_cta() {
asm volatile("fence.acq_rel.cta;" ::: "memory");
}

/// Shared memory
CUTLASS_DEVICE uint32_t ld_shared(const uint32_t* ptr) {
uint32_t ret;
Expand Down
2 changes: 2 additions & 0 deletions deep_gemm/include/deep_gemm/scheduler/mega_moe.cuh
Original file line number Diff line number Diff line change
Expand Up @@ -246,6 +246,8 @@ struct MegaMoEScheduler {
}

CUTLASS_DEVICE void release_task_info() const {
// Complete metadata reads before the scheduler can overwrite this slot.
ptx::fence_acq_rel_cta();
task_info_empty_barriers[sched_stage_idx ^ 1].arrive(0u);
}

Expand Down
10 changes: 7 additions & 3 deletions docs/fork-upstream-sync.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
# Upstream sync through PR #432
# Upstream sync through PR #441

This fork incorporates upstream commit
`66081d4c9c7d7c44f13fea402e5b622aa0f409c2` (Public Release 26/09),
including the preceding July release and tensormap race fix.
`78b69000794d0937b47ae3387eff7663410264d1` (Mega MoE task info slot release
ordering), including Public Release 26/09, the preceding July release, and
the tensormap race fix.

The scheduler completes task metadata reads before signaling that its slot
can be reused. This ordering fix applies to both BF16 and FP8/FP4 Mega MoE.

The fork's GeGLU activation, native MXFP4/BF16 training backward kernels,
activation saves across ring wraps, route-weight and combine modes, strided
Expand Down