HMMA.16816 is fixed latency on SM86 (Accelerator.SM86.Operands.
sm86TensorLatencyCycles: sources read at issue, a dependent product or read
of the result 24 cycles later), and the tiled products schedule it so. The
older kernels instead give every product a write barrier and wait for each
whole k-slice before the next, draining the tensor pipe. This rewrites the
products that write a barrier named in `freed` (a wait mask) to the
fixed-latency form and removes every wait on those barriers, so the stall
compactor and the fixed-latency checker order the products and their
readers instead. Nothing but tensor products may write a freed barrier:
another writer keeps its barrier but loses the waits, and SM86.Scoreboard
refuses the result, which the caller must check.
282def sm86MaskBit =
283 (lambda unrestricted mask : Nat . (lambda unrestricted bit : Nat .
284 (naturalModuloUnchecked (naturalDivideUnchecked mask bit) 2)))The compiler supplied declaration spans and resolved links from this source snapshot. This page does not assert that this file belongs to a checked closure.