liangsu9988's picture
Promote latest kernel artifacts to main
36cbc8c verified
|
Raw History Blame Contribute Delete
3.4 kB

adaptive-layernorm-producers Benchmark Results

Local source-build benchmark:

  • GPU: NVIDIA GeForce RTX 5090
  • Driver: 580.82.07
  • Runtime: local Torch 2.11 / CUDA 12.8 environment
  • Command: python adaptive-layernorm-producers/benchmarks/benchmark.py --backend source --iters 100
  • Baseline: PyTorch eager producer chain with equivalent operations.
  • Status: source correctness passed before benchmark. Refresh this table after installed-artifact validation on each target hardware.
Shape Rows Dim AdaLN->FP8 us Eager chain us Speedup LN->FP8 us Eager LN chain us Speedup
decode_action 16 2048 4.117 65.010 15.79x 3.962 48.006 12.12x
wan_video_short 64 3072 4.133 63.425 15.35x 4.117 47.826 11.62x
wan_video_ctx 256 3072 4.140 69.821 16.86x 4.108 55.611 13.54x
wan_video_2k 2520 3072 12.330 263.276 21.35x 10.267 218.926 21.32x
wan_video_4k 4096 3072 18.465 463.733 25.11x 16.412 394.908 24.06x

Six-way modulation producer

The new adaln_modulation6_bf16 path was measured against its raw CUDA launcher, the Tensor wrapper, eager, and torch.compile. Graph figures capture 32 identical launches per graph and divide replay time by 32, avoiding a graph launch-floor artifact for the smallest row.

Shape Native us Wrapper us Graph native us Graph wrapper us Eager us Compile us Wrapper/native Graph wrapper/native
GROOT DiT B1 S51 D1536 2.221 3.052 1.536 1.663 48.804 43.536 1.374 1.083
Motus B1 S2520 D3072 175.952 176.183 165.263 165.513 209.040 176.665 1.001 1.002
video long B1 S5070 D3072 347.251 354.773 344.858 344.592 582.678 354.059 1.022 0.999

The direct S51 row exposes about 0.83 us of dispatcher overhead. The multi-launch CUDA Graph path reduces the absolute gap to 0.127 us. Both figures are retained; the direct row is not described as native-equivalent.

NVIDIA Thor installed artifact

  • Device: NVIDIA Thor, SM110, aarch64
  • Runtime: PyTorch 2.11.0 + CUDA 13.0
  • Variant: torch211-cxx11-cu130-aarch64-linux
  • Source commit: 9b532b42ad71d0ef6bc79d1372e96910087faad4
  • Artifact code objects: SM87 and SM110a; measurements below are SM110a
  • Kernel Hub v1 artifact SHA256: 2b5542ae448332ebd4d1f2ca2f0030f88200061f8d2e64eb8581c314e7d7322c

The full installed-artifact correctness matrix passed. The two per-token producer entries were also measured against their raw registered ops. Outputs were bit-exact in every row.

Op Shape Raw us Wrapper us Wrapper/raw Graph wrapper/raw us
per-token GROOT DiT M51 D1536 6.154 6.148 0.999 6.211 / 6.224
table per-token GROOT DiT M51 D1536 6.166 6.150 0.997 7.127 / 6.607
per-token vision M105 D1152 8.204 8.207 1.000 8.203 / 8.377
table per-token vision M105 D1152 8.210 8.210 1.000 8.204 / 8.703
per-token video M2520 D3072 229.922 229.936 1.000 229.984 / 230.797
table per-token video M2520 D3072 230.174 229.929 0.999 229.719 / 230.431

The table reports the uploaded SM87+SM110a fat binary on Thor. SM87 is present as native cubin code but is not included in these runtime measurements.