Skip to content
KernelIndex
Search⌘K

submission 529363

ry2009 · python · License unknown

Use it

Vendorable · source mirrored · license unknownView source →

No package. Vendor the mirrored source: 36 lines, June 9 Researcher Reciprocity License v1.0.

submission_tunedcsv_real_v46.py
curl "https://kernelindex.com/api/v1/implementations/kernelbot-amd-mxfp4-mm-529363?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
AMD MXFP4 GEMMsuite of 6 cases
AMD Instinct MI355X
13.3µs
#416 of 1143
2026-03-11

Reported · How evidence levels are derived →

Source and license

sourceavailable
revision digestsha256:634020d953a9d7a16579464a8286c216cd3244380061e54207b097c19e683f2e
license declaredunknown
license concludedunknown
authorsry2009
imported2026-08-26

Techniques

Extracted from the mirrored source by pattern, never inferred. Each row cites its line.

split-k'cu_num,M,N,K,kernelId,splitK,us,kernelName,tflops,bw,errRatio\n'

Kernel source

submission_tunedcsv_real_v46.py36 lines
#!POPCORN leaderboard amd-mxfp4-mm
#!POPCORN gpu MI355X

import os
from pathlib import Path

_CFG = Path('/tmp/submission_tunedcsv_real_v46.csv')
if not _CFG.exists():
    _CFG.write_text(
        'cu_num,M,N,K,kernelId,splitK,us,kernelName,tflops,bw,errRatio\n'
        '256,4,2880,512,21,0,0.0,_ZN5aiter41f4gemm_bf16_per1x32Fp4_BpreShuffle_32x128E,0.0,0.0,0.0\n'
        '256,8,2112,7168,21,0,0.0,_ZN5aiter41f4gemm_bf16_per1x32Fp4_BpreShuffle_32x128E,0.0,0.0,0.0\n'
        '256,16,2112,7168,21,0,0.0,_ZN5aiter41f4gemm_bf16_per1x32Fp4_BpreShuffle_32x128E,0.0,0.0,0.0\n'
        '256,16,3072,1536,21,0,0.0,_ZN5aiter41f4gemm_bf16_per1x32Fp4_BpreShuffle_32x128E,0.0,0.0,0.0\n'
        '256,32,4096,512,21,0,0.0,_ZN5aiter41f4gemm_bf16_per1x32Fp4_BpreShuffle_32x128E,0.0,0.0,0.0\n'
        '256,32,2880,512,21,0,0.0,_ZN5aiter41f4gemm_bf16_per1x32Fp4_BpreShuffle_32x128E,0.0,0.0,0.0\n'
        '256,64,7168,2048,21,1,0.0,_ZN5aiter41f4gemm_bf16_per1x32Fp4_BpreShuffle_32x128E,0.0,0.0,0.0\n'
        '256,64,3072,1536,21,0,0.0,_ZN5aiter41f4gemm_bf16_per1x32Fp4_BpreShuffle_32x128E,0.0,0.0,0.0\n'
        '256,256,3072,1536,21,1,0.0,_ZN5aiter41f4gemm_bf16_per1x32Fp4_BpreShuffle_32x128E,0.0,0.0,0.0\n'
    )
os.environ['AITER_CONFIG_GEMM_A4W4'] = str(_CFG)

import torch
from task import input_t, output_t
import aiter
from aiter import QuantType, dtypes

QF = aiter.get_triton_quant(QuantType.per_1x32)
GEMM = aiter.gemm_a4w4

@torch.inference_mode()
def custom_kernel(data: input_t) -> output_t:
    A, _B, _B_q, B_shuffle, B_scale_sh = data
    A_q, A_scale_sh = QF(A, shuffle=True)
    return GEMM(A_q, B_shuffle, A_scale_sh, B_scale_sh, dtype=dtypes.bf16, bpreshuffle=True)
scrolls · 36 lines total

Source code from GPU Mode and the KernelBot dataset · June 9 Researcher Reciprocity License v1.0

Best evidence level for this revision: reported

JSON