Skip to content

Threading and timeout fixes - #230

Merged
lefterislazar merged 3 commits into
argotorg:mainfrom
mijovic:upstream-threading-timeout
Aug 10, 2026
Merged

Threading and timeout fixes#230
lefterislazar merged 3 commits into
argotorg:mainfrom
mijovic:upstream-threading-timeout

Conversation

@mijovic

@mijovic mijovic commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

No description provided.

mijovic added 2 commits August 4, 2026 10:11
withSolvers spawns `count` solver instances and checkSat/mapConcurrently
distribute queries across them, but on the non-threaded RTS getNumProcessors
returns 1: exactly one solver is spawned and every concurrent map runs
sequentially, on any machine. Adding -threaded (with -N to size the RTS to the
available cores) makes the existing parallelism effective.
equivCheck passed the raw --smttimeout value to Solvers.withSolvers, which
expects seconds and multiplies by 1000 when building the solver's own limit
flag. A documented 60000ms budget therefore became 60000s (16.6 hours): a hard
query would hold its solver instance indefinitely instead of timing out, and
with the pool effectively serialised the run appeared to hang. `act type`
already treats the value as milliseconds, so convert here (rounding up so a
sub-second value cannot become 0, which means no limit).
@mijovic mijovic changed the title Upstream threading and timeout fixes Threading and timeout fixes Aug 4, 2026

@anjapetkovic anjapetkovic left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. I can confirm that testing in combination with --numsolvers from #232 accelerates the solving when specified more solvers.

@lefterislazar
lefterislazar merged commit 24d0636 into argotorg:main Aug 10, 2026
4 checks passed
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.

3 participants