Skip to content

Conversation

strub
Copy link
Member

@strub strub commented Sep 2, 2025

This commits try to workaround a memory blowup in Why3 by changing the space_overhead configuration of the GC before calling SMT solvers.

This hack should be removed once the root cause has been found and fixed.

Time impact is limited (< 1%).

This commits try to workaround a memory blowup in Why3 by changing
the `space_overhead` configuration of the GC before calling SMT
solvers.

This hack should be removed once the root cause has been found and
fixed.

Time impact is limited (< 1%).
@strub strub requested a review from fdupress September 2, 2025 12:17
@strub strub self-assigned this Sep 2, 2025
@strub strub added the bug label Sep 2, 2025
@strub
Copy link
Member Author

strub commented Sep 2, 2025

See #740 for the CI.

Copy link
Member

@fdupress fdupress left a comment

Choose a reason for hiding this comment

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

"Time impact is limited."

This is true on the (relatively) well-behaved examples we keep track of. We should warn people who may keep SMT-heavy dangerous pets in their own repositories.

All good to go.

@strub
Copy link
Member Author

strub commented Sep 2, 2025

No, the impact is limited of SMT heavy source code.

@strub
Copy link
Member Author

strub commented Sep 2, 2025

Merging as #740 is green (before this patch, some projects were OOM killed).

Regarding timing, in general, we are more at 10% in general but for a temporary workaround, this is ok, given that we do not have any memory blowup anymore:

  • SHA3: 11m13 -> 12m15
  • cryptobox: 1m03 -> 1m10
  • xsalsa20: 27s -> 29s
  • XMSS-ACAI: 5m28 -> 6m43
  • XMSS-FSAI: 4m58 -> 5m58
  • sphincsplus: 17m27 -> 20m20

@strub strub merged commit ba49ccd into main Sep 2, 2025
15 checks passed
@strub strub deleted the ocaml5-why3-mem branch September 2, 2025 13:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants