-
Notifications
You must be signed in to change notification settings - Fork 564
Add CUTLASS fused moe kernels from TensorRT-LLM. #1113
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
bddbbef to
9957425
Compare
9957425 to
8d551aa
Compare
yzh119
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unittests passed on my side, @wenscarl thanks for the huge effort, let's merge this in first!
Currently all of the c++/cude source code are within to csrc directory, where we store pytorch c++ interface and pybind code, we should move kernel definition and framework agnostic interface to include directory as part of the header only library and reuse infrastructure with other components, in future PRs.
…-ai#1113) <!-- .github/pull_request_template.md --> ## 📌 This PR added the CUTLASS implementation of fused Mixture of Expert from TensorRT-LLM. <!-- What does this PR do? Briefly describe the changes and why they’re needed. --> ## 🔍 Related Issues Supported data types are: fp32/bf16/fp16/float8_e4m3fn/float8_e2m1 The kernels also support expert/tensor parallellism. This PR also exposes quantization methods for nvfp4. <!-- Link any related issues here --> ## 🧪 Tests - [ ] tests/test_trtllm_cutlass_fused.py - [ ] tests/test_fp4_quantize.py ## Reviewer Notes <!-- Optional: anything you'd like reviewers to focus on, concerns, etc. -->
|
is this only support sm100 ? |
…-ai#1113) <!-- .github/pull_request_template.md --> ## 📌 This PR added the CUTLASS implementation of fused Mixture of Expert from TensorRT-LLM. <!-- What does this PR do? Briefly describe the changes and why they’re needed. --> ## 🔍 Related Issues Supported data types are: fp32/bf16/fp16/float8_e4m3fn/float8_e2m1 The kernels also support expert/tensor parallellism. This PR also exposes quantization methods for nvfp4. <!-- Link any related issues here --> ## 🧪 Tests - [ ] tests/test_trtllm_cutlass_fused.py - [ ] tests/test_fp4_quantize.py ## Reviewer Notes <!-- Optional: anything you'd like reviewers to focus on, concerns, etc. -->
Hi, it seems nvfp4 is in the UT as well as in source code, thus I would appreciate it if I could know whether this supports nvfp4 as well |
📌 This PR added the CUTLASS implementation of fused Mixture of Expert from TensorRT-LLM.
🔍 Related Issues
Supported data types are: fp32/bf16/fp16/float8_e4m3fn/float8_e2m1
The kernels also support expert/tensor parallellism.
This PR also exposes quantization methods for nvfp4.
🧪 Tests
Reviewer Notes