Releases: AMD-AGI/Primus-Turbo
Releases · AMD-AGI/Primus-Turbo
Release list
v0.3.1
What's Changed
- feat: ck fp8 add hybrid format by @RuibinCheung in #279
- fix: use CUDA torch APIs in deep_ep to avoid hip_torch build failures by @zhenhuang12 in #281
- fix: amd-aiter uninstall and package check by @llying-001 in #289
- Dev/llying/update image v262 by @llying-001 in #287
- feat: attn support sbhd layout by @RuibinCheung in #275
- fix triton gemm determistic and correctness issue on gfx950 by @llying-001 in #286
- Allow Triton GEMM selectors to run without origami. by @kyle-256 in #296
- fix(typo): rename MXScalingRecipe, grouped gemm fp8 function name and remove scale args from quantize api by @RuibinCheung in #298
- refactor(moe): extensible EPBackend Protocol + EPBufferConfig & dispatcher test overhaul by @zhenhuang12 in #297
- fix: add input assertion for aiter attention by @RuibinCheung in #301
- fix: compile warning by @RuibinCheung in #302
- feat: clean unused env var and unify env var by @RuibinCheung in #305
- feat: attn add bhsd layout support by @RuibinCheung in #304
- fix(quantization): correct partial-tile indexing in reduce_row_kernel by @jasainio in #306
- fix: mxfp8 gemm WAR race between ds_read and buffer_load_lds by @xiaobochen-amd in #308
- fix: quantize mxfp8 int32 overflow by @xiaobochen-amd in #307
- [Attention] Torch.compile custom wrappers by @paulpak58 in #310
- update codeowners by @xiaobochen-amd in #315
- refact: ck gemm and grouped gemm directory structure by @RuibinCheung in #317
- feat(moe): add back deepep_use_comm_stream to force use single-stream by @zhenhuang12 in #314
- fix: add dispatch kwargs format print by @RuibinCheung in #316
- feat(grouped_gemm): switch default backend to Triton for BF16 and FP8 by @kyle-256 in #320
- fix: fix deepep combine hang by @zhenhuang12 in #327
- docs: add SECURITY.md for vulnerability reporting by @xiaobochen-amd in #331
- fix(grouped_gemm): bind per-stream hipBLASLt handles to fix bf16 multi-stream stall on gfx942 by @kyle-256 in #319
- [Attention] AITER varlen attention support by @paulpak58 in #332
- fix: hipblaslt_gemm correct workspace size for MI300X by @luiza-amd in #333
- fix: remove attn workaround by @RuibinCheung in #313
- Add HYBRID FP8 format support for Triton backend in gemm and grouped_gemm by @kyle-256 in #278
- feat(benchmark): support benchmark sharding for single case by @ChengYao-amd in #340
- feat(bench): add sharing support at benchmark yaml by @ChengYao-amd in #341
- feat: support hip permute kernel by @zhenhuang12 in #328
- feat(gemm): Drop input_precision="ieee" from FP8 tl.dot by @ChengYao-amd in #342
- feat(gemm): optimize blockwise FP8 GEMM Triton kernels (gfx950 / MI355X) by @ChengYao-amd in #339
- feat: add quantized tensor support by @RuibinCheung in #335
- docs: update example by @xiaobochen-amd in #346
- feat(jax): add 1g1p intranode and internode deepep for jax by @llying-001 in #344
- feat: refine rms norm ops by @RuibinCheung in #343
- refactor: moe_permute and DeepEPTokenDispatcher by @zhenhuang12 in #345
- [Op][Normalization] Triton BWD Norm Tuning + Persistent grid-stride by @paulpak58 in #352
- refactor(moe): rename num_permuted_tokens to permute_max_token_num in DeepEPTokenDispatcher by @zhenhuang12 in #354
- fix(moe): declare probs layout explicitly in moe_permute by @zhenhuang12 in #355
- feat: refactor origama and triton knobs by @RuibinCheung in #357
- fix(attention): match qkv_format strides in forward fake kernel by @jasainio in #362
- fix: add hybrid format test for float8linear by @RuibinCheung in #360
- feat(agent): Add Primus Turbo optimization agent skills by @ChengYao-amd in #338
- fix(agent): delete Chinese charactors by @ChengYao-amd in #368
- Add JAX vmap batching rules for MoE/grouped-GEMM primitives (pipeline-parallel support) by @yihuang-amd in #350
- build: pip-installable packaging + self-hosted PEP 503 release pipeline by @xiaobochen-amd in #239
- ci: build release sdist on the ROCm runner by @xiaobochen-amd in #370
- ci(release): drop submodule checkout in validate job by @xiaobochen-amd in #371
- opt(grouped_blockwise): MI300/MI355 grouped blockwise FP8 GEMM + HIP fused quant by @kyle-256 in #358
- fix: bring hipblaslt multi-stream grouped gemm back in autotune by @RuibinCheung in #367
- build(release): pin aiter by release tag and slim the sdist by @xiaobochen-amd in #372
New Contributors
- @luiza-amd made their first contribution in #333
- @yihuang-amd made their first contribution in #350
Full Changelog: v0.3.0...v0.3.1
v0.3.1-rc2
What's Changed
- opt(grouped_blockwise): MI300/MI355 grouped blockwise FP8 GEMM + HIP fused quant by @kyle-256 in #358
- fix: bring hipblaslt multi-stream grouped gemm back in autotune by @RuibinCheung in #367
- build(release): pin aiter by release tag and slim the sdist by @xiaobochen-amd in #372
Full Changelog: v0.3.1-rc1...v0.3.1-rc2
v0.3.1-rc1
What's Changed
- feat: ck fp8 add hybrid format by @RuibinCheung in #279
- fix: use CUDA torch APIs in deep_ep to avoid hip_torch build failures by @zhenhuang12 in #281
- fix: amd-aiter uninstall and package check by @llying-001 in #289
- Dev/llying/update image v262 by @llying-001 in #287
- feat: attn support sbhd layout by @RuibinCheung in #275
- fix triton gemm determistic and correctness issue on gfx950 by @llying-001 in #286
- Allow Triton GEMM selectors to run without origami. by @kyle-256 in #296
- fix(typo): rename MXScalingRecipe, grouped gemm fp8 function name and remove scale args from quantize api by @RuibinCheung in #298
- refactor(moe): extensible EPBackend Protocol + EPBufferConfig & dispatcher test overhaul by @zhenhuang12 in #297
- fix: add input assertion for aiter attention by @RuibinCheung in #301
- fix: compile warning by @RuibinCheung in #302
- feat: clean unused env var and unify env var by @RuibinCheung in #305
- feat: attn add bhsd layout support by @RuibinCheung in #304
- fix(quantization): correct partial-tile indexing in reduce_row_kernel by @jasainio in #306
- fix: mxfp8 gemm WAR race between ds_read and buffer_load_lds by @xiaobochen-amd in #308
- fix: quantize mxfp8 int32 overflow by @xiaobochen-amd in #307
- [Attention] Torch.compile custom wrappers by @paulpak58 in #310
- update codeowners by @xiaobochen-amd in #315
- refact: ck gemm and grouped gemm directory structure by @RuibinCheung in #317
- feat(moe): add back deepep_use_comm_stream to force use single-stream by @zhenhuang12 in #314
- fix: add dispatch kwargs format print by @RuibinCheung in #316
- feat(grouped_gemm): switch default backend to Triton for BF16 and FP8 by @kyle-256 in #320
- fix: fix deepep combine hang by @zhenhuang12 in #327
- docs: add SECURITY.md for vulnerability reporting by @xiaobochen-amd in #331
- fix(grouped_gemm): bind per-stream hipBLASLt handles to fix bf16 multi-stream stall on gfx942 by @kyle-256 in #319
- [Attention] AITER varlen attention support by @paulpak58 in #332
- fix: hipblaslt_gemm correct workspace size for MI300X by @luiza-amd in #333
- fix: remove attn workaround by @RuibinCheung in #313
- Add HYBRID FP8 format support for Triton backend in gemm and grouped_gemm by @kyle-256 in #278
- feat(benchmark): support benchmark sharding for single case by @ChengYao-amd in #340
- feat(bench): add sharing support at benchmark yaml by @ChengYao-amd in #341
- feat: support hip permute kernel by @zhenhuang12 in #328
- feat(gemm): Drop input_precision="ieee" from FP8 tl.dot by @ChengYao-amd in #342
- feat(gemm): optimize blockwise FP8 GEMM Triton kernels (gfx950 / MI355X) by @ChengYao-amd in #339
- feat: add quantized tensor support by @RuibinCheung in #335
- docs: update example by @xiaobochen-amd in #346
- feat(jax): add 1g1p intranode and internode deepep for jax by @llying-001 in #344
- feat: refine rms norm ops by @RuibinCheung in #343
- refactor: moe_permute and DeepEPTokenDispatcher by @zhenhuang12 in #345
- [Op][Normalization] Triton BWD Norm Tuning + Persistent grid-stride by @paulpak58 in #352
- refactor(moe): rename num_permuted_tokens to permute_max_token_num in DeepEPTokenDispatcher by @zhenhuang12 in #354
- fix(moe): declare probs layout explicitly in moe_permute by @zhenhuang12 in #355
- feat: refactor origama and triton knobs by @RuibinCheung in #357
- fix(attention): match qkv_format strides in forward fake kernel by @jasainio in #362
- fix: add hybrid format test for float8linear by @RuibinCheung in #360
- feat(agent): Add Primus Turbo optimization agent skills by @ChengYao-amd in #338
- fix(agent): delete Chinese charactors by @ChengYao-amd in #368
- Add JAX vmap batching rules for MoE/grouped-GEMM primitives (pipeline-parallel support) by @yihuang-amd in #350
- build: pip-installable packaging + self-hosted PEP 503 release pipeline by @xiaobochen-amd in #239
- ci: build release sdist on the ROCm runner by @xiaobochen-amd in #370
- ci(release): drop submodule checkout in validate job by @xiaobochen-amd in #371
New Contributors
- @jasainio made their first contribution in #306
- @paulpak58 made their first contribution in #310
- @luiza-amd made their first contribution in #333
- @yihuang-amd made their first contribution in #350
Full Changelog: v0.3.0...v0.3.1-rc1
v0.3.0
What's Changed
- feat(mxfp8): opt mxfp8 quantize kernel by @RuibinCheung in #165
- feat(deepep): support single-node moe_dispatch/combine on jax. by @zhenhuang12 in #162
- performance: jax group gemm align with pytorch version by @kyle-256 in #163
- Revert "performance: jax group gemm align with pytorch version" by @xiaobochen-amd in #168
- docs: update readme by @xiaobochen-amd in #169
- cicd: add benchamrk yaml by @xiaobochen-amd in #171
- feat: Backend Management and Auto-Tune Infrastructure by @xiaobochen-amd in #167
- feat: add hipblaslt grouped_gemm into Pytorch backend by @kyle-256 in #172
- Refactor the attention interface and add unified sequence parallel by @limou102 in #173
- chore: update readme & version number & cicd docker by @xiaobochen-amd in #174
- Fix import error of usp attention package by @limou102 in #177
- setup: if aiter already installed, skipping by @xiaobochen-amd in #178
- feat: add multi-process tests & clean unused code. by @xiaobochen-amd in #176
- refactor: hipblaslt grouped gemm c++ code. by @xiaobochen-amd in #181
- cicd : update docker image to v25.10 by @xiaobochen-amd in #183
- fix a autotune grouped gemm bug by @xiaobochen-amd in #184
- feat(mxfp4): Add mxfp4 gemm and fix scale calculate of mxfp8 by @RuibinCheung in #179
- feat: add compiler flag check for ROCm compatibility by @xiaobochen-amd in #185
- fix: add GPU sync to prevent auto-tune hang by @xiaobochen-amd in #186
- chore: set default build dir & rename grouped_gemm by @xiaobochen-amd in #187
- feat: turbo support ck based grouped gemm blockwise kernel by @kyle-256 in #182
- jax: add jax new feat and refactor ck_grouped_gemm/quant code by @xiaobochen-amd in #188
- feat(mxfp4/mxfp8): optimize mxfp4 performance and add 2D block quantization for mxfp8 by @RuibinCheung in #189
- setup: fix: redirect build dir to project root in editable install by @xiaobochen-amd in #191
- feat: update benchmark & cicd by @xiaobochen-amd in #192
- chore: update ck version to avoid rocm72 compile issue by @xiaobochen-amd in #193
- bench: update bench yaml by @xiaobochen-amd in #194
- feat: grouped gemm fp8 tensorwise support hipblaslt backend by @xiaobochen-amd in #196
- chore: add summarize_reults.py for benchmark by @xiaobochen-amd in #198
- benchmark: add more model config by @xiaobochen-amd in #199
- bench: add torch baseline by @xiaobochen-amd in #200
- feat(deepep): support third-party deepep as backend of TokenDispatcher. by @zhenhuang12 in #197
- feat(mxfp4): refactor gemm mxfp4 and mxfp8. fuse transpose, hadamard transform and quantization. by @RuibinCheung in #195
- feat(mxfp4/mxfp8): refine mxfp4 and mxfp8 by @RuibinCheung in #201
- bench: add h200 perf data by @xiaobochen-amd in #202
- bench: update csv format by @xiaobochen-amd in #205
- bench: remove slow backend and test case to avoid overtime by @xiaobochen-amd in #206
- feat(mxfp8/mxfp4): reduce quantize call in gemm mxfp8/mxfp4 and support fp4 turbo benchmark by @RuibinCheung in #203
- feat: add deepep intranode benchmark by @zhenhuang12 in #212
- opt: grouped_gemm_variable_k_postprocess perf by @xiaobochen-amd in #214
- fix: bench intranode deepep import error by @zhenhuang12 in #213
- [chore] fix multi zeros in group_lens issue by @kyle-256 in #216
- chore: add issue template by @xiaobochen-amd in #219
- feat(attn): support sink attention by @kyle-256 in #208
- chore: temporarily skip some hipBLASLt grouped GEMM test cases to ens… by @xiaobochen-amd in #222
- feat(mxfp4/mxfp8): refine quantization api and optimize kernels perf by @RuibinCheung in #207
- chore: update aiter & add attn deterministic benchmark by @xiaobochen-amd in #223
- cicd: update cicd runner by @xiaobochen-amd in #226
- [feat]: blockwise grouped_gemm_fp8 support hipgraph by @kyle-256 in #221
- feat(ci): build and install uccl-ep by @zhenhuang12 in #210
- bench: add TE fuser attention benchmark for AMD and NV by @vlluvia in #227
- [test] update blockwise grouped_gemm test case in hipgraph mode by @kyle-256 in #229
- feat(gg): hipblaslt backend support fp8 hybrid format in tensorwise gg by @RuibinCheung in #230
- feat: grouped gemm auto-tune on load-balance mode by @xiaobochen-amd in #231
- chore: update docker by @xiaobochen-amd in #232
- docs: update example.md by @xiaobochen-amd in #233
- fix: enable grouped gemm grad_out contiguous by @xiaobochen-amd in #234
- fix(grouped_gemm): use thread-local hipblaslt runner by @xiaobochen-amd in #238
- chore(aiter): update aiter to fix FA asm kernel bug by @RuibinCheung in #237
- test: add attn/gemm/gg deterministic test by @xiaobochen-amd in #224
- fix: scale may exist nan or inf by @RuibinCheung in #240
- [triton] re-write gemm/grouped_gemm triton backend for gfx942. by @kyle-256 in #235
- fix: force to use fgpu-rdc to compile by @zhenhuang12 in #236
- [feat] do not use triton autotune in gemm bf16 and fp8 tensorwise&rowwise kernel by @kyle-256 in #242
- ci: parallelize benchmarks across 8 GPUs via HIP_VISIBLE_DEVICES by @xiaobochen-amd in #246
- refactor(benchmark): config-driven GPU pool runner to replace inline … by @xiaobochen-amd in #247
- feat: attn 192/128 use aiter asm by @xiaobochen-amd in #248
- fix(typo): fp4 benchmark filename typo by @RuibinCheung in #245
- perf: update aiter for better attn-deterministic bwd perf. by @xiaobochen-amd in #250
- fix: use cheap fence to ensure memory order. by @zhenhuang12 in #251
- Fix HIPStreamMasqueradingAsCUDA build failure and setup.py issues by @t2h-fb in #253
- refactor(backend): introduce BackendEntry to support per-backend auto… by @xiaobochen-amd in #255
- update triton impl for mi300 & mi355 by @kyle-256 in #252
- reduce gemm blockwise test cases by @kyle-256 in #258
- feat: Make DeepEP CPU timeout configurable and increase default timeout by @zhenhuang12 in #256
- feat(mxfp4): integrate aiter fp4 gemm and support hip mxfp4 quant and shuffle kernel by @RuibinCheung in #249
- fix: refine get_fp8_dtype func by @RuibinCheung in #257
- fix sm_scale none bug by @xiaobochen-amd in #263
- ci: update turbo runner to tas node by @llying-001 in #273
- feat: refine mxfp8 quant kernel and optimzie mxfp4 quant kernel by @RuibinCheung in #261
- fix(JAX): correct moe dispatch backward gradients by @zhenhuang12 in #264
- opt: gemm mxfp8 kernel by @xiaobochen-amd in #274
- [feat] add slid...
v0.2.0
What's Changed
- fix(deepep): eliminate compile warning. by @zhenhuang12 in #123
- feat(deep_ep): support num_worst_token and use_defaulta_stream_as_comm_stream for internode. by @zhenhuang12 in #120
- feat(token_dispatcher): add DeepEPTokenDispatcher for MoE. by @zhenhuang12 in #114
- build: support multi-arch compilation (gfx942;gfx950) by @xiaobochen-amd in #124
- feat: attn add is_v3_atomic_fp32 env control by @xiaobochen-amd in #126
- chore: move router to moe dir by @xiaobochen-amd in #125
- [Sync-free MoE] feat: add swiglu, geglu and tokens_per_expert_to_mask api by @RuibinCheung in #122
- [HOTFIX] triton version requirement by @RuibinCheung in #130
- [Sync-free MoE] feat: refine act func by @RuibinCheung in #129
- fix(deepep): fix bug when use expert_capacity_factor by @zhenhuang12 in #127
- chore(docker): update default image to rocm/primus:v25.9_gfx942 by @xiaobochen-amd in #133
- [Aiter] Update aiter to fix pybind11 issue by @GeneDer in #132
- feat: gemm fp8 support cktile backend for both tensorwise and rowwise by @kyle-256 in #131
- [Fix] import activation module by @GeneDer in #137
- feat(deepep): move deep_ep header file to primus_turbo common header dir by @zhenhuang12 in #138
- feat(permute): permute op support to compute tokens_per_expert by @zhenhuang12 in #140
- feat: grouped gemm tensorwise impl update by @kyle-256 in #139
- chore: support jax=0.6.2 & jax cicd by @xiaobochen-amd in #136
- feat: add elementwise(unary/binary/quant/dequant) kernel by @xiaobochen-amd in #135
- chore: remove uselsee debug code by @kyle-256 in #141
- chore: refactor grouped gemm blockwise python code by @xiaobochen-amd in #142
- feat: add build ext and opt build efficiency by @xiaobochen-amd in #143
- feat: skip patch torch_extension when version >=2.8.0 by @zhenhuang12 in #144
- chore: refactor gemm fp8 api by @xiaobochen-amd in #145
- fix: skip disabled arch files in build by @xiaobochen-amd in #147
- chore: support quant gemm when m%128!=0 by @kyle-256 in #146
- feat: unify fp8 gemm API by @RuibinCheung in #148
- chore: update aiter version. by @xiaobochen-amd in #151
- add public primus-safe link in readme by @wenxie-amd in #152
- fix readme's typo error by @wenxie-amd in #153
- fix(deepep): fix internode_combine hang when set num_worst_token > 0 by @zhenhuang12 in #149
- [feat]: CK based block quant by @kyle-256 in #155
- feat(gemm): Add mxfp8 gemm and quantize kernel by @RuibinCheung in #154
- opt: grouped gemm perf when len(group_lens)==1 by @xiaobochen-amd in #158
- feat: add float4x2_e2m1 and float8_m8m0 data type by @xiaobochen-amd in #156
- feat(mxfp8): add k padding in bwd by @RuibinCheung in #160
- chore: Allow GEMM with k % 32 = 0 to participate in computation by @kyle-256 in #161
- feat: jax backend support grouped_gemm by @kyle-256 in #157
Full Changelog: v0.1.1...v0.2.0
v0.1.1
What's Changed
- feat(deepep): optimize gpu-cpu nosync. by @zhenhuang12 in #93
- feat: add std::numeric_limits specializations for fp8 (e4m3/e5m2) by @xiaobochen-amd in #98
- chore: set kPadN=true as default config by @kyle-256 in #99
- chore: fix groupedgemm fp8 tensorwise scale shape & add test cases by @xiaobochen-amd in #102
- feat(deepep): support internode for deepep. by @zhenhuang12 in #94
- chore: update variable_k implement by @kyle-256 in #104
- feat(deepep): improve intranode dispatch/combine performance. by @zhenhuang12 in #103
- chore: update readme & requirements.txt by @xiaobochen-amd in #105
- feat: use blockwise scaling for V in FP8 FA triton kernel by @hann-wang in #100
- feat: add python interfaces to create & destroy hip streams. by @yuankaichen-amd in #96
- chore: update gemm fp8 code. by @xiaobochen-amd in #78
- feat: refactor fp8 quant config by @RuibinCheung in #106
- feat: support rocm 7 by @xiaobochen-amd in #107
- fix: building on cpu nodes should not infer device arch by @GeneDer in #108
- chore: clean ck code by @xiaobochen-amd in #109
- doc: update readme by @xiaobochen-amd in #111
- doc(deepep): add DeepEP doc. by @zhenhuang12 in #110
- chore : clean unused cpp code & update benchmark code by @xiaobochen-amd in #112
- feat: build for arch==native by @xiaobochen-amd in #115
- doc: update primus product matrix. by @xiaobochen-amd in #116
- fix: gfx950 correctness issue by @kyle-256 in #117
- perf: update grouped gemm config on gfx355 to improve performance by @kyle-256 in #118
- build: remove -fgpu-rdc and --hip-link args by @wenxie-amd in #119
New Contributors
- @yuankaichen-amd made their first contribution in #96
- @GeneDer made their first contribution in #108
- @wenxie-amd made their first contribution in #119
Full Changelog: v0.1.0...v0.1.1
v0.1.0
What's Changed
- init: Project structure and basic operator setup by @xiaobochen-amd in #1
- ci: Add github CI by @xiaobochen-amd in #2
- feat: Add block-wise fp8gemm func by @xiaobochen-amd in #6
- ut: Numeric accuracy test for special functions and Gemm by @llying-001 in #8
- feat(async-tp): support fused_all_gather_matmul for async-tp. by @zhenhuang12 in #5
- benchmark: move numerical correctness to benchmark by @llying-001 in #9
- feat(attention): Add attention op. support bf16(ck/triton) and blockwise_fp8(Triton) by @kyle-256 in #7
- chore(format): integrate clang-format into pre-commit by @xiaobochen-amd in #10
- feat(gemm): Integrate ck gemm fp8 blockwise by @xiaobochen-amd in #13
- fix(gemm): ck fp8 gemm add meta func by @xiaobochen-amd in #14
- benchmark : add attention benchmark by @kyle-256 in #12
- fix(gemm): transA&transB use template in ck gemm fp8 blockwise by @xiaobochen-amd in #15
- feat: Add fp8 quant & dequant kernel and fp8 AlltoAll autograd function by @RuibinCheung in #17
- feat(ops): add blockwise fp8 grouped gemm by @xiaobochen-amd in #16
- feat(dtype): standard dtype naming and structure on cpp-side and python-side. by @xiaobochen-amd in #18
- feat(cpp): add cpp common code and float8 by @xiaobochen-amd in #19
- feat: Integrate hipblaslt with fp16/bf16 precision by @RuibinCheung in #20
- fix(attention): fix softmax_scale=None issue; rename TurboAttention by @kyle-256 in #22
- fix : fix attn bug when enable torch.compile by @xiaobochen-amd in #23
- ci : Use K8S by @haishuok0525 in #29
- feat(modules): Add MXLinear module. by @xiaobochen-amd in #25
- feat(moe): Add fused_moe_router function by @ChengYao-amd in #26
- refactor(gemm): refactor gemm ops/func and linear. by @xiaobochen-amd in #30
- feat(benchmark): add gemm_fp8 & grouped gemm benchmark; add flash_attn into attn benchmark by @kyle-256 in #32
- feat(async-tp): support fused_matmul_reduce_scatter(bf16) for async-tp. by @llying-001 in #28
- feat(async_tp): fused_all_gather_matmul support fp8. by @zhenhuang12 in #27
- feat(gemm): integrate hipblaslt fp8 by @RuibinCheung in #34
- refactor(ops): refactor gemm fp8 blockwise api by @xiaobochen-amd in #36
- feat(benchmark): add a torch pretrain e2e demo by @xiaobochen-amd in #38
- feat(attention): support attention context parallel with all2all communication type triton backend by @ChengYao-amd in #37
- feat(async-tp): remove triton-dist dependency. by @zhenhuang12 in #41
- feat(attention): update aiter, use hsa forward kernel when head_dim=128 by @kyle-256 in #43
- feat(rmsnorm): add rmsnorm hip kernel. by @xiaobochen-amd in #42
- feat(jax): add jax frontend & add rmsnorm lax by @xiaobochen-amd in #45
- feat(attention): add attn-cp all2all ck backend by @ChengYao-amd in #44
- chore: clean some benchmark code and modify grouped gemm code by @xiaobochen-amd in #40
- feat(deep_ep): primus_turbo integrate with deepep . by @zhenhuang12 in #48
- opt rmsnorm kernel perf by @xiaobochen-amd in #47
- feat(build): update build & remove aiter submodule by @xiaobochen-amd in #50
- feat(moe): add fused_moe_router_bkwd_triton by @ChengYao-amd in #51
- feat(attention): combine qkv all2all for cp-attn-a2a, refactor cp-att… by @ChengYao-amd in #53
- fix(deep_ep): fix intranode-dispatch bug and memory access fault on poolside 515B. by @zhenhuang12 in #54
- feat(grouped_gemm): add persistent grouped_gemm kernel. by @kyle-256 in #49
- feat(moe): fused router with scatter routing map & probs by @ChengYao-amd in #56
- feat: refine fp8 alltoall by @RuibinCheung in #57
- feat: update grouped gemm code & benchmark by @xiaobochen-amd in #58
- chore: add license header to source files by @xiaobochen-amd in #61
- feat(async-tp): support gemm_rs_overlap by pipeline method which splits inputs and use multi_stream copy by @llying-001 in #60
- feat(moe): fused router support arbitrary experts and selected groups by @ChengYao-amd in #62
- docs(readme): update readme.md by @xiaobochen-amd in #39
- fix(async_tp): make memory order safe. by @zhenhuang12 in #63
- fix(perf): fixed grouped_gemm_variable_k_postprocess perf issues by @xiaobochen-amd in #64
- feat(ck): update ck version and update ck grouped gemm code. by @xiaobochen-amd in #67
- refactor(attention): move files in utils dir to attention by @ChengYao-amd in #68
- fix: avoid aiter print warning in gfx950 by @xiaobochen-amd in #69
- feat: whl package name with git commit by @xiaobochen-amd in #70
- feat: add gfx950 arch to the FP8 FA triton kernel by @hann-wang in #52
- chore(attn): rename q_scale, k_scale, do_scale by @hann-wang in #71
- chore: convert transA/transB to trans_a/trans_b by @xiaobochen-amd in #74
- test(attention): numerical accuracy by @llying-001 in #72
- feat: gemm fp8 tensorwise support multi layouts and fp8-formats by @xiaobochen-amd in #76
- feat(deepep): dispatch return num_recv_tokens_per_expert of type tensor by @zhenhuang12 in #75
- feat(docs): add examples docs by @xiaobochen-amd in #77
- feat: grouped gemm support num_cu by @xiaobochen-amd in #79
- feat(attn): remove 192 128 head_size padding & refactor interface align with FA by @ChengYao-amd in #80
- chore: update setup and gitci by @xiaobochen-amd in #81
- feat(attn): refactor attn-cp ut by @ChengYao-amd in #82
- refactor(asynctp): refactor async-tp test cases. by @zhenhuang12 in #83
- fix: attention bug by @xiaobochen-amd in #84
- feat(grouped_gemm): grouped_gemm support fp8-tensorwise&fp8-rowwise. by @kyle-256 in #66
- chore: update README by @xiaobochen-amd in #85
- feat: add reduce kernel & opt quant tensorwise perf by @xiaobochen-amd in #86
- chore: update example and add codeowners cfg by @xiaobochen-amd in #87
- chore: add arch=native in setup & fix codeowners error path bug. by @xiaobochen-amd in #88
- feat(grouped_gemm): grouped_gemm_fp8 post-process optimization by @kyle-256 in #89
- 3rdparty: update aiter. by @xiaobochen-amd in #90
- docs: add source references and license headers for FlashAttention and TorchAO kernels by @xiaobochen-amd in #92
- chore: update ck & fix bf16 grouped gemm precision bug when n%256!=0 by @kyle-256 in #95
- chore: bump version to v0.1.0 by @xiaobochen-amd in #97
New Contributors
- @xiaobochen-amd made their first contribution in #1
- @llying-001 made their first contribution in #8
- @zhenhuang12 made their first contribution in https://github.com/AMD-AGI/...