Skip to content
KernelIndex
Search⌘K

submission 555582

alazarr.m · python · License unknown

Use it

Vendorable · source mirrored · license unknownView source →

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

submission.py
curl "https://kernelindex.com/api/v1/implementations/kernelbot-fp8-quant-555582?include=source"
interfacepython
Compatibility
measured onNVIDIA B200
declared hardwareNVIDIA B200
architecturessm_100
dtypesfp32

Benchmark evidence

1 measurement across 1 GPU, fastest first.

Operation / workload
Hardware
Latency
Rank
Observed
NVIDIA B200
16.0µs
#11 of 17
2026-03-15

Reported · How evidence levels are derived →

Source and license

sourceavailable
revision digestsha256:dcef75a83e698c78e85a75fecbb7a3fc74be3d889021afd2c02f3b4dc208a79f
license declaredunknown
license concludedunknown
authorsalazarr.m
imported2026-08-15

Techniques

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

num-warps = 4(1, 256, 64): helion.Config(block_sizes=[1], num_warps=4, num_stages=1),
stages = 1(1, 256, 64): helion.Config(block_sizes=[1], num_warps=4, num_stages=1),

Kernel source

submission.py79 lines
#!POPCORN leaderboard fp8_quant
#!POPCORN gpu B200_Nebius

from task import input_t, output_t

import torch
import helion
import helion.language as hl


# Per-shape configs: map (num_tokens, hidden_dim, group_size) to optimized helion.Config objects.
SHAPE_CONFIGS: dict[tuple, helion.Config] = {
    # Test shapes
    (1, 256, 64): helion.Config(block_sizes=[1], num_warps=4, num_stages=1),
    (4, 512, 128): helion.Config(block_sizes=[4], num_warps=4, num_stages=1),
    (16, 1024, 64): helion.Config(block_sizes=[16], num_warps=4, num_stages=1),
    (1, 4096, 128): helion.Config(block_sizes=[1], num_warps=4, num_stages=1),
    (8, 4096, 128): helion.Config(block_sizes=[8], num_warps=4, num_stages=1),
    # Benchmark shapes
    (16, 4096, 128): helion.Config(block_sizes=[16], num_warps=4, num_stages=1),
    (256, 4096, 128): helion.Config(block_sizes=[32], num_warps=4, num_stages=1),
    (256, 8192, 128): helion.Config(block_sizes=[32], num_warps=4, num_stages=1),
    (4096, 7168, 128): helion.Config(block_sizes=[32], num_warps=4, num_stages=1),
}


FP8_MAX = 448.0
FP8_EPS = 1e-10


def _make_kernel(config: helion.Config):
    @helion.kernel(static_shapes=True, config=config)
    def kernel(
        data: torch.Tensor,       # [N, group_size] input rows (one row per group)
        scales_out: torch.Tensor,  # [N] output scale per group
    ) -> torch.Tensor:
        nrows = data.size(0)
        ncols = hl.specialize(data.size(1))

        qout = torch.empty(nrows, ncols, dtype=torch.float32, device=data.device)

        for rr in hl.tile(nrows):
            row = data[rr, :].to(torch.float32)

            absmax = torch.amax(torch.abs(row), -1)
            absmax = torch.clamp(absmax, min=FP8_EPS)
            scale = absmax / FP8_MAX

            q = row / scale[:, None]
            q = torch.clamp(q, -FP8_MAX, FP8_MAX)
            qout[rr, :] = q
            scales_out[rr] = scale

        return qout

    return kernel


_KERNELS = {shape: _make_kernel(cfg) for shape, cfg in SHAPE_CONFIGS.items()}


def custom_kernel(data: input_t) -> output_t:
    x, x_q, x_s = data
    T, H = x.shape
    G = x_s.shape[1]
    gsz = H // G
    N = T * G

    kernel = _KERNELS[(T, H, gsz)]

    flat_in = x.reshape(N, gsz)
    flat_s = x_s.reshape(N)

    flat_q = kernel(flat_in, flat_s)

    x_q[...] = flat_q.reshape(T, H)
    x_s[...] = flat_s.reshape(T, G)
    return x_q, x_s
scrolls · 79 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