Uploaded using `kernel-builder`.
Browse files
build/torch213-cxx11-cu130-x86_64-linux/__init__.py
CHANGED
|
@@ -169,6 +169,8 @@ def select_fp8_linear_tile(m: int, n: int, k: int, variant: int = 0) -> str:
|
|
| 169 |
raise RuntimeError("small-M dispatcher currently supports variant=0 only")
|
| 170 |
if k % 32:
|
| 171 |
raise RuntimeError("SM120 requires k divisible by 32")
|
|
|
|
|
|
|
| 172 |
if m <= 16:
|
| 173 |
if k % 256 == 0:
|
| 174 |
return "ld_fp8_gemm_16x128x256_w4" if n % 128 == 0 else "ld_fp8_gemm_16x64x256_w4"
|
|
@@ -193,7 +195,7 @@ def select_fp8_linear_tile(m: int, n: int, k: int, variant: int = 0) -> str:
|
|
| 193 |
if n % 128 == 0:
|
| 194 |
return "ld_fp8_gemm_64x128x128_w4"
|
| 195 |
return "ld_fp8_gemm_64x64x128_w4"
|
| 196 |
-
raise RuntimeError("
|
| 197 |
|
| 198 |
|
| 199 |
def fp8_linear_bf16(
|
|
@@ -209,7 +211,7 @@ def fp8_linear_bf16(
|
|
| 209 |
``(M, K)`` and ``(N, K)``. ``alpha`` is a host float, normally the product
|
| 210 |
of static per-tensor input and weight scales. SM110 uses the production
|
| 211 |
CUTLASS Sq/T1/Wide dispatcher over full model row counts; SM120 uses the
|
| 212 |
-
hand-tuned M<=64 path.
|
| 213 |
"""
|
| 214 |
|
| 215 |
if out is None:
|
|
|
|
| 169 |
raise RuntimeError("small-M dispatcher currently supports variant=0 only")
|
| 170 |
if k % 32:
|
| 171 |
raise RuntimeError("SM120 requires k divisible by 32")
|
| 172 |
+
if m > 64:
|
| 173 |
+
return "cublaslt_fp8_large_m"
|
| 174 |
if m <= 16:
|
| 175 |
if k % 256 == 0:
|
| 176 |
return "ld_fp8_gemm_16x128x256_w4" if n % 128 == 0 else "ld_fp8_gemm_16x64x256_w4"
|
|
|
|
| 195 |
if n % 128 == 0:
|
| 196 |
return "ld_fp8_gemm_64x128x128_w4"
|
| 197 |
return "ld_fp8_gemm_64x64x128_w4"
|
| 198 |
+
raise RuntimeError("M must be positive")
|
| 199 |
|
| 200 |
|
| 201 |
def fp8_linear_bf16(
|
|
|
|
| 211 |
``(M, K)`` and ``(N, K)``. ``alpha`` is a host float, normally the product
|
| 212 |
of static per-tensor input and weight scales. SM110 uses the production
|
| 213 |
CUTLASS Sq/T1/Wide dispatcher over full model row counts; SM120 uses the
|
| 214 |
+
hand-tuned M<=64 path and cuBLASLt for larger row counts.
|
| 215 |
"""
|
| 216 |
|
| 217 |
if out is None:
|
build/torch213-cxx11-cu130-x86_64-linux/{_fp8_gemm_cuda_8fba1d7.abi3.so → _fp8_gemm_cuda_9ac1ace.abi3.so}
RENAMED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
size 5665200
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:311c4b58ff077ff68730c8690d1a44cfabf4815c9f277da3859d8226eed8f47b
|
| 3 |
size 5665200
|
build/torch213-cxx11-cu130-x86_64-linux/_ops.py
CHANGED
|
@@ -1,9 +1,9 @@
|
|
| 1 |
import torch
|
| 2 |
-
from . import
|
| 3 |
-
ops = torch.ops.
|
| 4 |
|
| 5 |
def add_op_namespace_prefix(op_name: str):
|
| 6 |
"""
|
| 7 |
Prefix op by namespace.
|
| 8 |
"""
|
| 9 |
-
return f"
|
|
|
|
| 1 |
import torch
|
| 2 |
+
from . import _fp8_gemm_cuda_9ac1ace
|
| 3 |
+
ops = torch.ops._fp8_gemm_cuda_9ac1ace
|
| 4 |
|
| 5 |
def add_op_namespace_prefix(op_name: str):
|
| 6 |
"""
|
| 7 |
Prefix op by namespace.
|
| 8 |
"""
|
| 9 |
+
return f"_fp8_gemm_cuda_9ac1ace::{op_name}"
|
build/torch213-cxx11-cu130-x86_64-linux/metadata.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
{
|
| 2 |
"name": "fp8-gemm",
|
| 3 |
-
"id": "
|
| 4 |
"version": 1,
|
| 5 |
"license": "Apache-2.0",
|
| 6 |
"python-depends": [],
|
|
@@ -15,9 +15,9 @@
|
|
| 15 |
"digest": {
|
| 16 |
"algorithm": "sha256",
|
| 17 |
"files": {
|
| 18 |
-
"__init__.py": "
|
| 19 |
-
"
|
| 20 |
-
"_ops.py": "
|
| 21 |
}
|
| 22 |
},
|
| 23 |
"provenance": {
|
|
@@ -27,7 +27,7 @@
|
|
| 27 |
"dirty": false
|
| 28 |
},
|
| 29 |
"kernel": {
|
| 30 |
-
"sha": "
|
| 31 |
"dirty": false
|
| 32 |
}
|
| 33 |
}
|
|
|
|
| 1 |
{
|
| 2 |
"name": "fp8-gemm",
|
| 3 |
+
"id": "_fp8_gemm_cuda_9ac1ace",
|
| 4 |
"version": 1,
|
| 5 |
"license": "Apache-2.0",
|
| 6 |
"python-depends": [],
|
|
|
|
| 15 |
"digest": {
|
| 16 |
"algorithm": "sha256",
|
| 17 |
"files": {
|
| 18 |
+
"__init__.py": "7UODiuG0STVFP2F4ZTuu+2z8Ih/u8572gTNX+uLBP/s=",
|
| 19 |
+
"_fp8_gemm_cuda_9ac1ace.abi3.so": "MRxLWP8Hf/aHMMhpDRpEz6v0gVyfJ32jhZ2CJu7Y9Hs=",
|
| 20 |
+
"_ops.py": "8623JQCjzAtJO6ZqPnLQaFzDwRCUC0pkQWHUlwQbtAc="
|
| 21 |
}
|
| 22 |
},
|
| 23 |
"provenance": {
|
|
|
|
| 27 |
"dirty": false
|
| 28 |
},
|
| 29 |
"kernel": {
|
| 30 |
+
"sha": "9ac1ace56531e1dee1125f5dd2f1cafc77b890fa",
|
| 31 |
"dirty": false
|
| 32 |
}
|
| 33 |
}
|