Skip to content

Conversation

jacob-hughes
Copy link
Collaborator

This commit first fixes an issue where Alloy did not record when a finalizer thread had already been spawned. This alone removes the finalizer count anomalies and brings performance back up to ~20% slower than our previous finalization model [1].

Second, by introducing a condition variable to sleep the finalizer thread when there is no work to do we now see that our elision benchmark results are statistically indistinguishable to [1].

[1]: Benchmarks run using Alloy from commit #abe23a2c

This commit first fixes an issue where Alloy did not record  when a
finalizer thread had already been spawned. This alone removes the
finalizer count anomalies and brings performance back up to ~20% slower
than our previous finalization model [1].

Second, by introducing a condition variable to sleep the finalizer
thread when there is no work to do we now see that our elision benchmark
results are statistically indistinguishable to [1].

[1]: Benchmarks run using Alloy from commit #abe23a2c
@ltratt ltratt added this pull request to the merge queue May 19, 2025
Merged via the queue into softdevteam:master with commit 1a07f44 May 19, 2025
4 of 8 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.

2 participants