Repository navigation
Thread pool design kept as a record, marked dropped - #334
Merged
Merged
Conversation
…itect) for_each_block wakes a persistent team per call instead of starting min(threads, blocks) new std::jthreads, so the private package's per-step kernels (sun-and-shadow evaluator, snow, evaporation) stop paying a start and a join each step. Same partition, counter and error order; a busy pool (second calling thread, nested call), a forked child or a shut-down pool falls back to today's start-and-join. One pool per shared library, joined at process exit by a static reaper. Reverses increment 14 R7's "no pool". Premise checked against the profile at ee9565d3: about 35,000 is threads started in the loop (4,684 evaluator calls x 8), not calls; estimated saving 1-1.5 s of the year run, not the evaluator's 18.5 s. Tests P1-P8 (reuse counted by a new thread_starts(), growth, participants, partition, nested, two callers, exit, fork); micro-benchmark of 10,000 short calls; bench.py refine must not regress. About 85 counted lines. Co-Authored-By: Claude Opus 5.5 <[email protected]>
…#328, #329, #330 (@architect) Merge base 3b21eb5. First-parent merges brought in (git log --merges --first-parent --oneline 3b21eb5..2818da3): 2818da3 Merge pull request #330 from expertanalytics/worktree-worktree-retro-1022b 3b7325a Merge pull request #329 from expertanalytics/worktree-h29-review-rules bc86453 Merge pull request #328 from expertanalytics/worktree-retro-1021d a393378 Merge pull request #327 from expertanalytics/worktree-worktree-retro-1022a Conflicts: none Gates on the merged tree, in ./.venv: check_prohibited_deps, check_detria_boundary, check_citations --base origin/master, ruff check, ruff format --check, mypy, pytest. _core rebuilt: no, no C++ came in. Co-Authored-By: Claude Opus 5.5 <[email protected]>
…citation (@architect) Ola ruled on 2026-10-22 that the thread-pool design goes to the public repo marked dropped rather than deleted, because the private package's increment 89 (the sun evaluator speed-up, private PR #40) cites it. - docs/increments/88-thread-pool.md: status line now says dropped, not built, and why: the request assumed about 35,000 parallel calls a year, but the year makes 4,684 (35,000 was threads started, 8 a call, as section 1 already said), so a persistent team would save about 1 to 1.5 s a year; the evaluator's time was per-receiver trigonometry, sped up in the private increment 89. The design body is unchanged. - ROADMAP.md row 88: status column matches; the row stays on line 90. origin/master 2818da3 was merged in first as 7dc2c6d (tools/merge_master.py). Co-Authored-By: Claude Opus 5.5 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Docs only: increment 88's design (the parallel helper keeps its threads between calls) kept as a record, marked dropped and not built, per Ola's ruling of 2026-10-22: the year has 4,684 parallel calls (the 35,000 assumed was threads started, 8 a call), so a pool saves about 1-1.5 s a year; the time was per-receiver trigonometry, sped up in the private package's increment 89, which cites this design. ROADMAP row 88 says the same. Review: APPROVED on 0f641c6 (@Reviewer).
🤖 Generated with Claude Code