Skip to content

Revert "Reuse a shared Rayon pool during RSRS factorization"#8

Merged
ignacia-fp merged 1 commit into
mainfrom
revert-7-shared-rayon-pool
May 19, 2026
Merged

Revert "Reuse a shared Rayon pool during RSRS factorization"#8
ignacia-fp merged 1 commit into
mainfrom
revert-7-shared-rayon-pool

Conversation

@ignacia-fp

Copy link
Copy Markdown
Collaborator

This reverts PR #7 (Reuse a shared Rayon pool during RSRS factorization).

The change did not alter the algorithm itself, but it did change thread lifetime and process behavior: instead of creating short-lived Rayon pools for individual RSRS phases, it stores a long-lived custom thread pool inside each Rsrs instance. In our server environment this appears to trigger SIGBUS failures. The risk comes from keeping a persistent pool alive with large per-thread stacks (128 MiB) and a thread count that defaults to all CPUs, which significantly changes the process’s memory/thread footprint and is especially fragile in embedded or pre-fork server setups.

Reverting restores the previous transient-pool behavior, which is less efficient but has been stable in production.

@ignacia-fp ignacia-fp merged commit 18ba234 into main May 19, 2026
8 checks passed
@ignacia-fp ignacia-fp deleted the revert-7-shared-rayon-pool branch May 19, 2026 18:07
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.

1 participant