Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
d025a7f
Add gated delta product (GDP) mixer and spec (#45)
devnkong Jun 16, 2026
299c118
Skip Muon on GDP's inproj matrix (#119)
mkhona-nvidia Jul 24, 2026
a3feea2
Fix GDP checkpoint resharding across TP sizes
deepakn94 Jul 24, 2026
d669b4a
Add GDP dynamic inference support
deepakn94 Jul 24, 2026
210ae41
Add inter-document masking (packed sequence) support to GDP training …
deepakn94 Jul 24, 2026
02a7cf9
Tag GDP packed parameters for refit
Jul 30, 2026
c3af950
Fail fast on invalid module specs
devnkong Aug 3, 2026
e2c8855
Fix GDP mixer module naming
devnkong Aug 3, 2026
9c4f6de
Update FLOPs calculation to account for GDP
rogerwaleffe Jul 16, 2026
0e95267
fix(optimizer): skip Muon for Mamba input projection
devnkong Aug 5, 2026
f286a4c
chore: add missing GDP test copyright header
devnkong Aug 5, 2026
2feb52b
chore: apply PR formatting fixes
devnkong Aug 5, 2026
2fe04d6
refactor(ssm): rename packed sequence helper module
devnkong Aug 5, 2026
20d9d5b
docs(ssm): describe gated delta product mixer
devnkong Aug 5, 2026
fe926f0
refactor(ssm): remove unused GDP constructor arguments
devnkong Aug 5, 2026
0d03d60
fix(ssm): configure GDP Householder reflections
devnkong Aug 6, 2026
0ceca77
perf(ssm): avoid packed sequence host sync
devnkong Aug 6, 2026
cd15964
refactor(ssm): name GDP mixer submodules explicitly
devnkong Aug 6, 2026
25386da
test(models): update hybrid MoE config golden
devnkong Aug 6, 2026
6878aeb
Linting
santhnm2 Aug 7, 2026
2483de0
Merge with main
santhnm2 Aug 10, 2026
052282e
refactor(ssm): move GDP dynamic inference onto the shared SSM interface
santhnm2 Aug 10, 2026
b0280ab
Merge remote-tracking branch 'upstream/main' into gdp_common_interface
santhnm2 Aug 11, 2026
3b8a54f
Add GDP inference unit tests
santhnm2 Aug 11, 2026
02dc028
Merge remote-tracking branch 'upstream/main' into gdp_inference_unit_…
santhnm2 Aug 13, 2026
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
11 changes: 6 additions & 5 deletions megatron/core/ssm/gated_delta_product.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@
)
from megatron.core.process_groups_config import ProcessGroupCollection
from megatron.core.ssm.gdp_context_parallel import GDPContextParallel

# Decode uses the in-repo Triton conv update, which accepts int64 slot indices.
from megatron.core.ssm.ops.causal_conv1d_triton import causal_conv1d_update
from megatron.core.ssm.packed_seq_helpers import (
build_packed_seq_idx,
check_fla_sequence_packing_support,
Expand All @@ -38,11 +41,10 @@
from megatron.core.utils import deprecate_inference_params

try:
from causal_conv1d import causal_conv1d_fn, causal_conv1d_update
from causal_conv1d import causal_conv1d_fn
from causal_conv1d.causal_conv1d_varlen import causal_conv1d_varlen_states
except ImportError:
causal_conv1d_fn = None
causal_conv1d_update = None
causal_conv1d_varlen_states = None

try:
Expand Down Expand Up @@ -604,9 +606,8 @@ def ssm_decode(
dim=-1,
)

# Indexed conv update: reads/writes the per-request conv state rows
# selected by ``batch_indices``, in place. ``self.activation`` must be the
# activation *string* so the kernel enables SiLU (a bool would disable it).
# Indexed conv update into the per-request state rows (``batch_indices``
# is None for static batching, where the cache is already in order).
VKQ = causal_conv1d_update(
VKQ,
conv_state,
Expand Down
Loading
Loading