Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
97 commits
Select commit Hold shift + click to select a range
b1574f0
produce/consume extra output
vthumbe1503 Jul 28, 2026
63192ab
allow for fusions with producer/consumer being part of same fuser wit…
vthumbe1503 Aug 4, 2026
3b4b523
cleanup
vthumbe1503 Aug 4, 2026
de38ed8
minor cleanup
vthumbe1503 Aug 4, 2026
385b0d5
dispatch combine impl
vthumbe1503 Aug 4, 2026
ad3b044
fusible ops test
vthumbe1503 Aug 5, 2026
5fb0d3a
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 5, 2026
2ba4f6a
Merge remote-tracking branch 'nvidia_origin/main' into enable_extra_o…
vthumbe1503 Aug 5, 2026
3af2ecc
keep just ops infra changes
vthumbe1503 Aug 5, 2026
d7d6380
cleanup with residual tests
vthumbe1503 Aug 5, 2026
74f563a
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 5, 2026
29d23f2
Merge branch 'main' into enable_extra_out_consumption
vthumbe1503 Aug 6, 2026
87e2b36
address review comment
vthumbe1503 Aug 6, 2026
80601dc
update to cleaner documentation
vthumbe1503 Aug 7, 2026
5070e34
address review comments
vthumbe1503 Aug 7, 2026
ae41ad3
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 7, 2026
f82cbed
some cleanup
vthumbe1503 Aug 9, 2026
5a4e1ec
update docs
vthumbe1503 Aug 9, 2026
0a479c7
pin channels through channel version
vthumbe1503 Aug 9, 2026
d679998
unecessary handling removal
vthumbe1503 Aug 9, 2026
8f7ba95
simplify
vthumbe1503 Aug 9, 2026
c62bb15
doc update + extra_grad = None case
vthumbe1503 Aug 9, 2026
a93b820
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 9, 2026
35b73b1
test cleanup
vthumbe1503 Aug 9, 2026
6801a6d
no need to check staleness in every forward call
vthumbe1503 Aug 9, 2026
6688e8a
remove redundant tests
vthumbe1503 Aug 9, 2026
12430c2
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 9, 2026
b189550
revert from bad names
vthumbe1503 Aug 9, 2026
a4cc112
keep simple
vthumbe1503 Aug 9, 2026
7edaf89
Merge branch 'enable_extra_out_consumption' of github.com:vthumbe1503…
vthumbe1503 Aug 9, 2026
5ba6055
unecessary checks
vthumbe1503 Aug 9, 2026
76826dc
minor doc
vthumbe1503 Aug 9, 2026
827f8e9
Merge branch 'main' into enable_extra_out_consumption
vthumbe1503 Aug 10, 2026
60ca030
basic op and refrence implementation
vthumbe1503 Aug 10, 2026
8ec3a39
compare fused and unfused ops and they are matching
vthumbe1503 Aug 10, 2026
63a4ea3
fix lint
vthumbe1503 Aug 10, 2026
87c1cf6
Update transformer_engine/pytorch/ops/fuser.py
vthumbe1503 Aug 11, 2026
307ab15
Update docs/examples/op_fuser/op_fuser.rst
vthumbe1503 Aug 11, 2026
97a91cf
Update transformer_engine/pytorch/ops/fuser.py
vthumbe1503 Aug 11, 2026
6468a14
address review comments + extra output being configurable to be outpu…
vthumbe1503 Aug 11, 2026
2eb21ed
cleanup
vthumbe1503 Aug 11, 2026
1b0a4b1
Merge remote-tracking branch 'origin/enable_extra_out_consumption' in…
vthumbe1503 Aug 11, 2026
212a460
Restore ep_reference to its originally created content.
vthumbe1503 Aug 11, 2026
c7dacdf
Support BF16 grouped MLP in ep_reference and keep MOE extras internal.
vthumbe1503 Aug 11, 2026
00b48cf
update test to have internal extra_out
vthumbe1503 Aug 11, 2026
db24495
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 11, 2026
3c37643
extra output grad can be None, equivalent to zero
vthumbe1503 Aug 12, 2026
e10a13b
fix merge conflict
vthumbe1503 Aug 17, 2026
5b555ce
revert commit for nccl
vthumbe1503 Aug 17, 2026
14d9ef9
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 17, 2026
42c622e
more fix
vthumbe1503 Aug 17, 2026
1172c72
Merge branch 'dispatch_combine_op' of github.com:vthumbe1503/Transfor…
vthumbe1503 Aug 17, 2026
e40eb74
cudnn kernel
vthumbe1503 Aug 19, 2026
c7eceaa
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 19, 2026
fb8fc83
remove the previous artifact
vthumbe1503 Aug 19, 2026
76d7fdd
minor change
vthumbe1503 Aug 19, 2026
c946162
minor bug fix
vthumbe1503 Aug 19, 2026
80f6063
single_groupe_weight + remove copies
vthumbe1503 Aug 20, 2026
a779c6c
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 20, 2026
f197433
cpu init for megatron needs
vthumbe1503 Aug 21, 2026
075fc44
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 21, 2026
cc01b97
untested commit for quantizer roles for dispatch/combine along with p…
vthumbe1503 Aug 22, 2026
609c9b4
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 22, 2026
31407af
cleanups
vthumbe1503 Aug 23, 2026
1d5d2ed
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 23, 2026
d13c17f
more cleanup
vthumbe1503 Aug 23, 2026
bfb7eec
Merge branch 'dispatch_combine_op' of github.com:vthumbe1503/Transfor…
vthumbe1503 Aug 23, 2026
8e18c46
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 23, 2026
895d1a1
refactor tests
vthumbe1503 Aug 23, 2026
a4279c2
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 23, 2026
ffb4d62
some fix
vthumbe1503 Aug 24, 2026
d449da9
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 24, 2026
f888050
update fused kernel import issue and view issue in delay wgrad
vthumbe1503 Aug 24, 2026
290cb8d
Merge branch 'main' into dispatch_combine_op
vthumbe1503 Aug 25, 2026
b882b35
refactor based on ep.py + reduce cpu overheads
vthumbe1503 Aug 25, 2026
be9a0dc
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 25, 2026
f6c6306
limit the recv tokens per rank
vthumbe1503 Aug 26, 2026
38fd365
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 26, 2026
fedcda0
address review comments + rework design for ops(epconfig + kwarg epbu…
vthumbe1503 Aug 28, 2026
a584be8
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 28, 2026
bf9dd3f
address review comments
vthumbe1503 Aug 28, 2026
0722ec6
Merge branch 'dispatch_combine_op' of github.com:vthumbe1503/Transfor…
vthumbe1503 Aug 28, 2026
1d1e11a
t_flat was a better name
vthumbe1503 Aug 28, 2026
5674825
simplify
vthumbe1503 Aug 28, 2026
6646ca3
clean cursor mess
vthumbe1503 Aug 28, 2026
62d9b06
restore comments
vthumbe1503 Aug 28, 2026
e8d1bb7
bf16 hardcoding for combine as well
vthumbe1503 Aug 28, 2026
cb4c57e
scale type should be autocast type if autocast enabled
vthumbe1503 Aug 28, 2026
b518f6e
Merge branch 'main' into dispatch_combine_op
vthumbe1503 Aug 28, 2026
ebed56a
update copyrights
vthumbe1503 Aug 28, 2026
3e9812b
Merge branch 'dispatch_combine_op' of github.com:vthumbe1503/Transfor…
vthumbe1503 Aug 28, 2026
a44091e
match the right syntax
vthumbe1503 Aug 28, 2026
4956554
Merge branch 'main' into dispatch_combine_op
vthumbe1503 Aug 28, 2026
ae6dc49
better changes
vthumbe1503 Aug 29, 2026
dc59ae3
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Aug 29, 2026
f83257e
minor review comments pending
vthumbe1503 Aug 29, 2026
a18254c
Merge branch 'main' into dispatch_combine_op
vthumbe1503 Aug 29, 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
647 changes: 639 additions & 8 deletions tests/pytorch/distributed/run_ep.py

Large diffs are not rendered by default.

30 changes: 30 additions & 0 deletions tests/pytorch/test_grouped_tensor.py
Original file line number Diff line number Diff line change
Expand Up @@ -286,6 +286,36 @@ def test_basic_construction_all_same_shape(self) -> None:
assert grouped_tensor.get_common_last_dim() == 512
assert grouped_tensor.has_data()

@pytest.mark.skipif(not torch.cuda.is_available(), reason="CUDA not available")
def test_module_to_moves_grouped_parameter_storage(self) -> None:
"""Module.to preserves GroupedTensor parameters initialized on CPU."""
grouped_tensor = GroupedTensor.make_grouped_tensor_with_shapes(
num_tensors=2,
shapes=[(4, 8), (4, 8)],
quantizer=None,
device="cpu",
dtype=torch.float32,
)
values = torch.arange(grouped_tensor.numel(), dtype=torch.float32)
grouped_tensor.rowwise_data.copy_(values)

module = torch.nn.Module()
module.register_parameter("weight", torch.nn.Parameter(grouped_tensor))
original_parameter = module.weight
expected = values.to(device="cuda", dtype=torch.bfloat16)

module.to(device="cuda", dtype=torch.bfloat16)

assert module.weight is original_parameter
assert isinstance(module.weight, GroupedTensor)
assert module.weight.device.type == "cuda"
assert module.weight.dtype == torch.bfloat16
assert module.weight.rowwise_data.device.type == "cuda"
assert module.weight.rowwise_data.dtype == torch.bfloat16
torch.testing.assert_close(module.weight.rowwise_data, expected, rtol=0, atol=0)
members = module.weight.split_into_quantized_tensors()
assert all(member.device.type == "cuda" for member in members)

def test_basic_construction_varying_first_dim(self) -> None:
"""Test GroupedTensor construction with varying first dimension"""
num_tensors = 3
Expand Down
Loading
Loading