Module Sarek_execute

module Coverage_affine : sig ... end

Epilogue coverage without enumeration, for affine store indices (specs/epilogue-fusion.md).

module Epilogue_policy : sig ... end

Which backends run epilogue fusion, and for which kernels (specs/epilogue-fusion.md, FR-104; specs/optimisation-policy.md).

module Execute : sig ... end
module Execute_error : sig ... end
module Fusion_epilogue : sig ... end

Epilogue fusion: an element-wise consumer inlined after the producer's stores (specs/epilogue-fusion.md).

module Fusion_horizontal : sig ... end

Horizontal fusion of independent kernels (specs/launch-window.md, FR-011).

module Index_bitset : sig ... end

A set of array indices in [0, capacity), one bit each, grown on demand: the store sets of the epilogue coverage enumeration (Launch_epilogue), without hashing or polymorphic comparison per element.

module Index_slice : sig ... end

Host evaluation of a kernel's store indices for one launch (specs/epilogue-fusion.md).

module Ir_memo : sig ... end
module Ir_rename : sig ... end

Renaming of a kernel's names, shared by the fusion rewrites (specs/launch-window.md, specs/epilogue-fusion.md).

module Kernel_access : sig ... end

How a kernel uses its vector parameters, and whether it can be fused horizontally (specs/launch-window.md).

module Launch_epilogue : sig ... end

Epilogue fusion in the launch window (specs/epilogue-fusion.md).

module Launch_limits : sig ... end

Per-backend limits on the signature of a launch the window may issue: kernel argument slots and push-constant bytes. A backend with no entry is unbounded as far as the window is concerned. Depends only on the IR and Stdlib, like Launch_window.

module Launch_policy : sig ... end
module Launch_window : sig ... end

Deferred launch window with horizontal fusion (specs/launch-window.md).

module Matrix_admission : sig ... end
module Matrix_specialise : sig ... end

Launch-time specialisation of matrix products (specs/matrix-pattern-dynamic.md).

module Policy_stamp : sig ... end

The policy a memoised, policy-dependent result was computed under (specs/optimisation-policy.md, cache rule).

module Soa_launch : sig ... end
module Window_gate : sig ... end