FUTURE handles are added to the SALA happens-before graph (HBGraph) via
AddBinding, so the DMA allocator can share a slot between async phases that
provably cannot overlap. EVENT handles are not, so the allocator may
over-serialize GPU events: events that can never overlap still interfere and
consume distinct named-barrier slots (or spill to scalar mbarriers).
Task: give EVENT handles the same HBGraph binding as FUTURE handles so
LivenessAnalyzer exposes event overlap, and the DmaResourceAllocator
FindHBGraph / hb_override logic naturally covers events.
See Documents/Developer/dma-resource-allocation.md ("SALA binding for
events").
FUTUREhandles are added to the SALA happens-before graph (HBGraph) viaAddBinding, so the DMA allocator can share a slot between async phases thatprovably cannot overlap.
EVENThandles are not, so the allocator mayover-serialize GPU events: events that can never overlap still interfere and
consume distinct named-barrier slots (or spill to scalar mbarriers).
Task: give
EVENThandles the sameHBGraphbinding asFUTUREhandles soLivenessAnalyzerexposes event overlap, and theDmaResourceAllocatorFindHBGraph/hb_overridelogic naturally covers events.See
Documents/Developer/dma-resource-allocation.md("SALA binding forevents").