File size: 1,388 Bytes
4a45a53
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
[general]
name = "grouped-moe-gemv"
license = "Apache-2.0"
version = 2
backends = ["cuda"]

[general.cuda]
minver = "12.8"

[general.hub]
repo-id = "flashrt/grouped-moe-gemv"

[torch]
include = ["csrc"]
src = [
  "torch-ext/torch_binding.cpp",
  "torch-ext/torch_binding.h",
]

[kernel.grouped_moe_gemv]
backend = "cuda"
depends = ["torch", "cutlass_4_0"]
include = ["csrc"]
cuda-minver = "12.8"
cuda-capabilities = ["12.0a"]
src = [
  "csrc/kernels/nexn2_w4a16_gemv.cu",
  "csrc/kernels/nexn2_w4a16_gemv.cuh",
  "csrc/kernels/nexn2_moe_grouped_w4a16.cu",
  "csrc/kernels/nexn2_moe_grouped_w4a16.cuh",
  "csrc/kernels/grouped_w4a4_gemv_sm120.cu",
  "csrc/kernels/grouped_w4a4_gemv_sm120.cuh",
  "csrc/kernels/quantize_activations_nvfp4.cu",
  "csrc/kernels/quantize_activations_nvfp4.cuh",
]

[kernel.grouped_moe_gemv_sm110]
backend = "cuda"
depends = ["torch", "cutlass_4_0"]
include = ["csrc"]
cuda-minver = "13.0"
cuda-capabilities = ["11.0a"]
src = [
  "csrc/kernels/w4a16_edge_sm120.cu",
  "csrc/kernels/w4a16_edge_sm120.cuh",
  "csrc/kernels/fp4_e2m1_compat.cuh",
  "csrc/kernels/sm110_dispatch.cu",
  "csrc/kernels/nexn2_w4a16_gemv.cuh",
  "csrc/kernels/nexn2_moe_grouped_w4a16.cuh",
  "csrc/kernels/grouped_w4a4_gemv_sm120.cuh",
  "csrc/kernels/quantize_activations_nvfp4.cu",
  "csrc/kernels/quantize_activations_nvfp4.cuh",
]
cuda-flags = [
  "-DFLASHRT_W4A16_EDGE_UNROLL=2",
]