fp8-gemm / CARD.md
liangsu9988's picture
Publish PI0.5 Thor kernels from 503100c (torch213-cxx11-cu130-aarch64-linux)
9022070 verified
|
Raw
History Blame
1.33 kB

flashrt/fp8-gemm

FlashRT native CUDA FP8 GEMV/GEMM kernels for low-latency transformer and diffuser linear layers.

The block-128 scaled API supports Ada sm_89 and Blackwell sm_120a. The per-tensor API supports Blackwell sm_110a (Jetson AGX Thor) and sm_120a. SM110 uses the production FlashRT Sq/T1/Wide CUTLASS family and has been swept across PI0.5, GROOT, Cosmos Edge, and LingBot VLA projection shapes.

Functions

  • fp8_linear_bf16(input, weight, alpha=1.0, out=None, variant=0)
  • fp8_linear_residual_bf16(input, weight, residual, alpha=1.0, variant=0)
  • fp8_linear_bias_bf16(input, weight, bias, alpha=1.0, out=None)
  • fp8_linear_bias_residual_bf16(input, weight, bias, residual, alpha=1.0)
  • fp8_linear_bias_gelu_bf16(input, weight, bias, alpha=1.0, out=None)
  • fp8_blockwise_linear_bf16(input, weight, input_scale, weight_scale, out=None)
  • select_fp8_linear_tile(m, n, k, variant=0)

On SM110, keep variant=0 for the tuned public dispatcher. Variants 1, 2, and 3 force Sq, T1, and Wide respectively for diagnostics.

SM110 also provides BF16 bias, in-place bias+residual, and tanh-GELU+bias epilogues for SigLIP-style projection and MLP shapes. The validated large-M plain GEMM band is M=65..1024.

See the repository README for shape contracts, validation status, and examples.