FlashRT NVFP4

FlashRT NVFP4 layout helpers for Blackwell low-bit paths.

The v1 surface exposes NVFP4 scale-factor layout conversion. It converts linear per-block scale bytes into the CUTLASS Sm1xx swizzled scale-factor layout expected by downstream NVFP4 kernels.

Kernels

  • nvfp4_sf_linear_to_swizzled: convert (rows, D / 16) linear scale bytes to flat swizzled layout.
  • nvfp4_sf_swizzled_bytes: compute the required swizzled output byte count.

When To Use

Use this package as the layout bridge before calling Blackwell NVFP4 GEMM, decode, or fused-quant kernels that consume Sm1xx swizzled scale factors.

For fused SiLU(gate) * up plus NVFP4 quantization, use flashrt/flashrt-fused-quant. For W4A4 decode matvec, use flashrt/flashrt-smallm-gemm.

Hardware

Current validation status is recorded in VALIDATION.md.

Current v1 build scope is CUDA 12.8+ SM110a and SM120a. This layout transform does not use architecture-specific tensor-core instructions.

See examples/nvfp4_scale_factor_layout.py for a minimal layout-conversion example.

Downloads last month
22
flashrt
kernel
cuda
nvfp4
quantization
Supported hardwares new
CUDA
11.0a12.0a
DGX Spark
GB10
128GB
GPU
RTX PRO 6000 WS
96GB
GPU
RTX PRO 6000 Max-Q
96GB
GPU
RTX PRO 5000
48GB
GPU
RTX PRO 4500 WS
32GB
GPU
RTX PRO 4000
24GB
GPU
RTX PRO 4000 SFF
24GB
GPU
RTX PRO 2000
16GB
RTX
RTX 5090
32GB
RTX
RTX 5090 D
32GB
RTX
RTX 5090 Mobile
24GB
RTX
RTX 5080
16GB
RTX
RTX 5080 Mobile
16GB
RTX
RTX 5070
12GB
RTX
RTX 5070 Mobile
8GB
RTX
RTX 5070 Ti
16GB
RTX
RTX 5070 Ti Mobile
12GB
RTX
RTX 5060 Ti
16GB
RTX
RTX 5060
8GB
RTX
RTX 5060 Mobile
8GB
RTX
RTX 5050
8GB
RTX
RTX 5050 Mobile
8GB
OS
linux
Arch
x86_64