Commit Graph
118 Commits
Author SHA1 Message Date
LuminolT 8ad348fb11 feat(megamoe): add fp4 group16 to group32 requant path
Add a utility and synthetic benchmark path for converting FP4 group16 tensors into group32 tensors that the existing SM100 block32 MegaMoE kernels can consume.

Document that this is a requantization path rather than a lossless metadata rewrite, so GLM-5.2 accuracy validation is still required before production use.

Tested: PYTHONPYCACHEPREFIX=/private/tmp/deepgemm_pycache python3 -m py_compile deep_gemm/utils/math.py tests/test_layout.py tests/test_mega_moe.py

Tested: git diff --check

Not-tested: CUDA build, SM100/B300 runtime, and GLM-5.2 accuracy validation are not available locally.
2026-07-08 18:34:33 +08:00
LuminolT 79fcfd6abf feat(megamoe): add nvfp4 group16 capability gate
Allow SM100 FP4 scale layout transforms to accept group16 and thread weight granularity through the MegaMoE Python wrapper, API checks, and synthetic benchmark entrypoint.

Keep fused SM100 MegaMoE compute behind an explicit group16 capability gate until the SFB/TMEM/MMA scale path is updated and validated.

Tested: PYTHONPYCACHEPREFIX=/private/tmp/deepgemm_pycache python3 -m py_compile deep_gemm/mega/__init__.py tests/test_mega_moe.py tests/generators.py

Tested: git diff --check

Not-tested: CUDA build and SM100/B300 runtime validation are not available locally.
2026-07-08 18:29:09 +08:00
Xinyi Liu 453fc7b046 feat: implement sm90 megamoe phase6 combine 2026-06-18 17:40:49 +08:00
Xinyi Liu 71f012a356 style: fix sm90 megamoe dispatch indentation 2026-06-18 15:54:00 +08:00
Xinyi Liu 9bd0519605 feat: implement sm90 megamoe phase5 l2 scatter 2026-06-18 15:17:20 +08:00
Xinyi Liu f3553f976c feat: implement sm90 megamoe phase4 l1 epilogue 2026-06-18 01:09:45 +08:00
Xinyi Liu 842124b1c5 feat: implement sm90 megamoe phase3 l1 wgmma 2026-06-18 00:46:41 +08:00
Xinyi Liu 540e5aeadc feat: implement sm90 megamoe phase2 dispatch-only 2026-06-18 00:00:36 +08:00
Xinyi Liu 1dafd0f173 feat: add sm90 megamoe phase1 interfaces 2026-06-17 23:54:49 +08:00
Zhean XuandChenggang Zhao 891d57b4db Add various optimizations and Mega MoE benchmarks (#316)
* Merge with private repo

* Add Mega MoE Benchmark

* Minor fix

* Update

---------

Co-authored-by: Chenggang Zhao <chenggangz@deepseek.com>
2026-04-24 18:41:37 +08:00
Chenggang Zhao 7f2a703ed5 [Public release 26/04] Introducing Mega MoE, FP4 Indexer and other features/fixes (#304)
* Merge with private repo

* Update README

* Update README

* Update README

* Add PyTorch requirements

* Fix sync scopes for MQA logits (#256)

* Update README
2026-04-17 09:45:14 +08:00
Ray Wang d30fc36c8f Fix sync issue of TMEM alloc/dealloc (#292) 2026-03-22 16:41:28 +08:00
Xin Qiu 35c4bc8771 fix: k_grouped_fp8_gemm_nt_contiguous crashes with n = 768 on H100 (#238) 2026-02-25 10:13:54 +08:00
Ray Wang 477618cd51 Fix a sync issue in SM100 MQA logits (#285) 2026-02-03 17:29:49 +08:00
Zhean Xu 0f5f266202 Multiple updates and refactorings (#280) 2026-01-16 17:06:52 +08:00
Ray Wang 38f8ef73a4 Multiple updates and refactorings (#231) 2025-11-21 17:49:47 +08:00
Zhean Xu bb4424aad4 Fix sum_k * shape_m overflow 2025-11-19 11:51:36 +08:00
Ray Wang ec5e9ed0b8 Fix SM90 MQA logits (#229) 2025-11-19 10:50:36 +08:00
Ray Wang 2f9d87877e Use larger MMA shape (#227) 2025-11-14 11:38:15 +08:00
oliver königandChenggang Zhao 9f196058ae chore: Build and store bdist wheels (#181)
* build: Minor tweeks for wheel build

Signed-off-by: oliver könig <okoenig@nvidia.com>

* ci: Workflows for wheel build

Signed-off-by: oliver könig <okoenig@nvidia.com>

* fix

Signed-off-by: oliver könig <okoenig@nvidia.com>

* fix

Signed-off-by: oliver könig <okoenig@nvidia.com>

* build: Add CachedWheel

Signed-off-by: oliver könig <okoenig@nvidia.com>

* add version to init

Signed-off-by: oliver könig <okoenig@nvidia.com>

* revert

Signed-off-by: oliver könig <okoenig@nvidia.com>

* revert

Signed-off-by: oliver könig <okoenig@nvidia.com>

* revert

Signed-off-by: oliver könig <okoenig@nvidia.com>

* v2

Signed-off-by: oliver könig <okoenig@nvidia.com>

* update

Signed-off-by: oliver könig <okoenig@nvidia.com>

* test

Signed-off-by: oliver könig <okoenig@nvidia.com>

* from packaging.version import parse

Signed-off-by: oliver könig <okoenig@nvidia.com>

* local version

Signed-off-by: oliver könig <okoenig@nvidia.com>

* remove file

Signed-off-by: oliver könig <okoenig@nvidia.com>

* revert

Signed-off-by: oliver könig <okoenig@nvidia.com>

* Updates and lint

* revert missing cudaextension args

Signed-off-by: oliver könig <okoenig@nvidia.com>

* Add timeout

* fix DG settings

Signed-off-by: oliver könig <okoenig@nvidia.com>

* DG_USE_LOCAL_VERSION

Signed-off-by: oliver könig <okoenig@nvidia.com>

* Update version

* Detect local changes

* Minor fix

* Revert CUTLASS

* Unify options

---------

Signed-off-by: oliver könig <okoenig@nvidia.com>
Co-authored-by: Chenggang Zhao <chenggangz@deepseek.com>
2025-10-10 18:23:40 +08:00
Chenggang Zhao c1bf4cae4b Fix version 2025-10-01 20:31:27 +08:00
Chenggang Zhao 07b82fb8cd Fix old CUDA compatibility 2025-10-01 20:29:15 +08:00
Simon Mo 59f2c07cf2 Add SM100 kernels (#201)
Signed-off-by: simon-mo <simon.mo@hey.com>
2025-09-29 17:07:28 +08:00
Chenggang Zhao 80ceeb2c76 Add SM90 kernels (#200) 2025-09-29 17:00:23 +08:00
Ray Wang 3f71de7aa9 Make various updates and fixes (#198) 2025-09-25 16:19:07 +08:00
zhonghui-J 2da871e304 Fix grouped gemms performance issue. (#168) 2025-08-22 17:35:43 +08:00
Chenggang Zhao e38c2e3103 Remove comments 2025-08-22 17:32:04 +08:00
Chenggang Zhao f20256fd50 Compatible with CUDA 13 2025-08-22 17:30:47 +08:00
xiweny affdb1cd90 Add sm_100f support and make nvcc 13 happy (#157)
Signed-off-by: Xiwen Yu <13230610+VALLIS-NERIA@users.noreply.github.com>
2025-08-22 17:19:32 +08:00
Ray Wang f85ec649d7 Make various updates and fixes: (#164)
- Add BF16 support for SM90 and SM100
- Refactor Python APIs
- Other fixes and code refactoring
2025-08-15 18:32:35 +08:00
Ray Wang d9c363f86f Make various updates and fixes:
- Add support for legacy CUDA versions; now compatible with CUDA 12.3 and newer
- Add support for NVRTC compilation
- Other fixes and code refactoring
2025-08-02 19:52:22 -07:00
yukuai26andKuai Yu aff9da0aba Fix SM90 GEMM (#149)
* Fix sm90 GEMM

* Fix typo

---------

Co-authored-by: Kuai Yu <yukuai@deepseek.com>
2025-08-01 10:36:49 +08:00
Ray Wangandfzyzcjy 9da4a23561 Add more GPU architectures support (#112)
* Add more GPU architectures support

* Update layout.py

* Optimize performance, Add SM90 support, Add 1D2D SM100 support

* Add fmtlib submodule at commit 553ec11

---------

Co-authored-by: fzyzcjy <5236035+fzyzcjy@users.noreply.github.com>
2025-07-18 11:32:22 +08:00
Chenggang Zhao 03d0be3d2d Simplify expression 2025-07-02 14:07:05 +08:00
fy1214 3fc6728dee [add] fix smem_barrier size in wgrad way (#122) 2025-07-02 14:05:36 +08:00
yukuai e82c4139da Revert "Fixed the bug in get_swizzle_mode function related to elem_size setting. (#115)"
This reverts commit ac428e25e0.

This PR causes wgrad to hang during testing. Revert it until we resolve the issue
2025-06-23 17:13:36 +08:00
TherLF ac428e25e0 Fixed the bug in get_swizzle_mode function related to elem_size setting. (#115) 2025-06-23 09:37:10 +08:00
shixiancandShixian Cui 0c88cd0139 Fix illegal memory address when skipping -1 m indices (#113)
Co-authored-by: Shixian Cui <shixian@amazon.com>
2025-06-16 10:44:31 +08:00
8dfa329827 Grouped GEMM skip useless computation for unaligned Ms (#103)
* Grouped GEMM skip useless computation for unaligned Ms

* Update readme.md

* small typo

* Rename variables

* Restore previous indent

* Format

* Refactor tests

* Add `SkipComputation` types

* Bug fixed

* Format

* Fix tests

* Add assertions

* Minor fix

---------

Co-authored-by: yukuai <yukuai@deepseek.com>
Co-authored-by: Chenggang Zhao <chenggangz@deepseek.com>
2025-05-27 13:43:38 +08:00
Chenggang Zhao 391755ada0 Fix JIT tests 2025-05-16 14:39:58 +08:00
Chenggang Zhao 78d8362e7a Add a missing #pragma once 2025-05-15 18:10:05 +08:00
Chenggang Zhao 104a6ec109 Add __assertfail 2025-05-15 17:04:21 +08:00
Chenggang Zhao 3b412f458a Unify kwargs usages 2025-05-15 16:53:52 +08:00
Chenggang Zhao 350989eef3 Unify ceil_divs 2025-05-15 16:48:32 +08:00
Chenggang Zhao 4373af2e82 Add DG_PRINT_CONFIGS 2025-05-15 16:36:40 +08:00
Chenggang Zhao 816b39053a Refactor launch-related structures 2025-05-15 16:14:21 +08:00
Chenggang Zhao e2d6a107ef Cleanup some useless staffs 2025-05-14 15:46:45 +08:00
Zhean XuandChenggang Zhao 04278f6dee Weight gradient kernels for dense and MoE models (#95)
* Init weight gradient kernels.

* Support unaligned n,k and gmem stride

* Update docs

* Several cleanups

* Remove restrictions on N

* Add stride(0) assertions

---------

Co-authored-by: Chenggang Zhao <chenggangz@deepseek.com>
2025-05-14 14:47:58 +08:00
Chenggang Zhao 8702f910e3 Fix 12.9 compatibility 2025-05-07 13:23:40 +08:00
Chenggang Zhao 085b4a1532 Add DG_PRINT_AUTOTUNE to README 2025-05-07 11:46:52 +08:00