Consolidate pressure API, add placement pressure, unify budget defaults#42
Merged
Conversation
Fold get_antichain_pressure into get_pressure behind work_budget: int | None — the two computed the identical max-weight antichain and differed only in the default budget; None now removes the bound. Thread work_budget through per_allocation_antichain_pressure (the linearize attempt and each pinned flow), mirroring the global query. Add get_placement_pressure, the peak a placement realizes (max(offset + size)): an upper bound on the exact pressures and the max entry of get_per_allocation_placement_pressure. It replaces the ad-hoc _peak helpers in the omni tests and the pressure benchmark. Move the closure-cap default to C++ as kDefaultClosureCap (exported as DEFAULT_CLOSURE_CAP) so both exact-query defaults live next to the algorithms they tune, default closure_cap on the raw closure bindings, and rename kNoLinearizeBudget to kNoWorkBudget — it bounds the antichain flow construction too, not just linearization.
Public wrapper over the C++ compute_temporal_overlaps binding, keyed by id like the raw map but total and deterministic: every allocation is a key in input order, conflict-free ones map to an empty set (the raw binding omits them). Rejects duplicate ids like the other id-keyed primitives.
fpedd
force-pushed
the
pressure-api-consolidation
branch
from
July 15, 2026 22:54
29a983e to
5f72b14
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fold get_antichain_pressure into get_pressure behind work_budget:
int | None — the two computed the identical max-weight antichain and
differed only in the default budget; None now removes the bound. Thread
work_budget through per_allocation_antichain_pressure (the linearize
attempt and each pinned flow), mirroring the global query.
Add get_placement_pressure, the peak a placement realizes
(max(offset + size)): an upper bound on the exact pressures and the max
entry of get_per_allocation_placement_pressure. It replaces the ad-hoc
_peak helpers in the omni tests and the pressure benchmark.
Move the closure-cap default to C++ as kDefaultClosureCap (exported as
DEFAULT_CLOSURE_CAP) so both exact-query defaults live next to the
algorithms they tune, default closure_cap on the raw closure bindings,
and rename kNoLinearizeBudget to kNoWorkBudget — it bounds the antichain
flow construction too, not just linearization.