Free buffer compaction after a geometric phase #
Preserve previously completed records, append the accepted prefix with its full point lists, and retain only original request data for the pending suffix. These operations are all fixed wiring; the phase is charged once.
Literal position of an accepted prefix record.
Equations
- Algebraic.MassProduction.Nonuniform.BufferAdvance.acceptedIndex split index = Fin.castLE ⋯ index
Instances For
Literal position of a record in the remaining suffix.
Equations
- Algebraic.MassProduction.Nonuniform.BufferAdvance.pendingIndex split index = ⟨accepted + ↑index, ⋯⟩
Instances For
Prefix positions are distinct.
Suffix positions are distinct.
Preserve old completed records and append the newly accepted point lists.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Keep the pending suffix's original request data and discard its unused point lists.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The complete fixed wiring for the next scheduler buffer.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Run the phase once and compact its results into the next buffer.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The exact gate count of circuit.
Exact semantics of buffer compaction: old records, accepted point lists, and the pending original-data suffix all appear at their fixed positions.
Buffer compaction adds no charged gates.