Skip to content

fix(solver): keep a runner's declaration only for partitioned search - #223

Merged
blackopsrepl merged 1 commit into
mainfrom
feature/220-runner-declaration
Nov 8, 2026
Merged

blackopsrepl merged 1 commit into
mainfrom
feature/220-runner-declaration

Conversation

@blackopsrepl

Copy link
Copy Markdown
Collaborator

Closes #220.

A compiled runner kept its full declaration (descriptor and search context) inline for the whole solve; only partitioned_search uses it. The runner now keeps it, boxed, only when the configuration has a partitioned phase.

A compiled runner kept the declaration its graph was compiled from, inline,
for the whole solve, although only a partitioned_search phase compiles
partition runners from it. Every solve held a second copy of the search
context, and every runner grew by the declaration's size.

The runner now keeps the declaration, boxed, only when the configuration
has a partitioned phase. Against v0.24.0, construction first fit goes from
+3.9% to +0.8% instructions and from +27.8% to +4.0% max RSS.

Closes #220
@blackopsrepl
blackopsrepl merged commit 9f09b31 into main Nov 8, 2026
14 checks passed
@blackopsrepl
blackopsrepl deleted the feature/220-runner-declaration branch November 8, 2026 20:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Every compiled runner keeps a second copy of its search declaration

1 participant