submission 526320
Hamza · python · License unknown
Use it
Vendorable · source mirrored · license unknownView source →
No package. Vendor the mirrored source: 31 lines, June 9 Researcher Reciprocity License v1.0.
submission.py
curl "https://kernelindex.com/api/v1/implementations/kernelbot-amd-mxfp4-mm-526320?include=source"interfacepython
Compatibility
measured onAMD Instinct MI355X
declared hardwareAMD Instinct MI355X
architecturesgfx950
dtypesbf16, mxfp4
Benchmark evidence
1 measurement across 1 GPU, fastest first.
Operation / workload
Hardware
Latency
Rank
Observed
Reported · How evidence levels are derived →
Source and license
sourceavailable
revision digestsha256:576fcde32bf60ecbd7fba49e04d3f8861d7d2c9cebc433d5811ff98e65619897
license declaredunknown
license concludedunknown
authorsHamza
imported2026-08-15
Techniques
Extracted from the mirrored source by pattern, never inferred. Each row cites its line.
fp4
FP4 quant + FP4 GEMM reference: bf16 A, MXFP4 B -> MXFP4 per-1x32 quant A -> gemm_a4w4 -> bf16 C.Kernel source
submission.py31 lines
"""
FP4 quant + FP4 GEMM reference: bf16 A, MXFP4 B -> MXFP4 per-1x32 quant A -> gemm_a4w4 -> bf16 C.
Quant logic follows aiter op_tests/test_gemm_a4w4.py (get_triton_quant(QuantType.per_1x32)).
"""
import aiter
from aiter import QuantType, dtypes
from task import input_t, output_t
QUANT_FUNC = aiter.get_triton_quant(QuantType.per_1x32)
GEMM_A4W4 = aiter.gemm_a4w4
OUTPUT_DTYPE = dtypes.bf16
def custom_kernel(data: input_t) -> output_t:
"""
Reference: MXFP4 per-1x32 quant on A; B_shuffle, B_scale_sh from generate_input.
gemm_a4w4 with bpreshuffle=True.
"""
A, _, _, B_shuffle, B_scale_sh = data
A_q, A_scale_sh = QUANT_FUNC(A, shuffle=True)
return GEMM_A4W4(
A_q,
B_shuffle,
A_scale_sh,
B_scale_sh,
dtype=OUTPUT_DTYPE,
bpreshuffle=True,
)
scrolls · 31 lines total
Source code from GPU Mode and the KernelBot dataset · June 9 Researcher Reciprocity License v1.0
Changes from previous submission
Against this author's previous submission submission 526200.
⋯ 9 unchanged linesQUANT_FUNC = aiter.get_triton_quant(QuantType.per_1x32)GEMM_A4W4 = aiter.gemm_a4w4OUTPUT_DTYPE = dtypes.bf16- _CACHED_A = None- _CACHED_A_Q = None- _CACHED_A_SCALE_SH = None- def _quantize_a_cached(A):- global _CACHED_A, _CACHED_A_Q, _CACHED_A_SCALE_SH-- # Benchmark mode reuses the same tensor object for timed repeats.- if A is _CACHED_A:- return _CACHED_A_Q, _CACHED_A_SCALE_SH-- A_q, A_scale_sh = QUANT_FUNC(A, shuffle=True)- _CACHED_A = A- _CACHED_A_Q = A_q- _CACHED_A_SCALE_SH = A_scale_sh- return A_q, A_scale_sh--def custom_kernel(data: input_t) -> output_t:"""Reference: MXFP4 per-1x32 quant on A; B_shuffle, B_scale_sh from generate_input.gemm_a4w4 with bpreshuffle=True."""A, _, _, B_shuffle, B_scale_sh = data+ A_q, A_scale_sh = QUANT_FUNC(A, shuffle=True)- A_q, A_scale_sh = _quantize_a_cached(A)return GEMM_A4W4(A_q,B_shuffle,
scrolls · 35 diff lines total
Best evidence level for this revision: reported
JSON