Skip to content

List three rejected arms and say the time horizon is a planning horizon - #398

Merged
aywrite merged 2 commits into
masterfrom
claude/candidate-6-root-effort-2q00jf
Oct 12, 2026
Merged

aywrite merged 2 commits into
masterfrom
claude/candidate-6-root-effort-2q00jf

Conversation

@aywrite

@aywrite aywrite commented Oct 12, 2026

Copy link
Copy Markdown
Owner

Two documentation commits, no change to behaviour (bench 11,088,536 unchanged).

  • docs/ROADMAP.md: three arms measured since the rejected list was last written, each with its match figures. They are the depth veto with its time spent (−26 ±20), history in the late move reduction (−2 ±10) and a time horizon from a moves-left estimate (−6 ±12 at equal time). Multi-cut's entry gains its continuation to 5,000 games (+2 ±7, failed).
  • src/time_control.rs: the comment on the falling horizon now says that 20 and 10 are a planning horizon, about 0.3 of the moves a game has left, and why. The search spends about 70% of each share, and matches favoured spending faster than an even spread.

🤖 Generated with Claude Code

https://claude.ai/code/session_011saZHGHgVvBWxJ7nougTPN


Generated by Claude Code

…ns and the moves-left horizon as rejected

Three arms measured since the list was last written: the depth veto
with its time returned, the late move reduction reading history with
its continuation table, and a time horizon set from an estimate of the
moves left. Multi-cut's entry gains its continuation to 5,000 games.
Each entry carries its match figures.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011saZHGHgVvBWxJ7nougTPN
…es left

The falling horizon's 20 and 10 read as moves to go, but they are about
0.3 of the moves a game here has left. The comment now says so and why:
the search spends about 70% of each share, and matches favoured
spending faster than an even spread. A horizon from a fitted estimate
of the moves left did no better at equal time.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011saZHGHgVvBWxJ7nougTPN
@github-actions

Copy link
Copy Markdown
Contributor

Speed against 54fb9a68

Measured on AMD EPYC 9V74 80-Core Processor.
Both sides built with rustc 1.99.0 (b940084d7 2026-09-28).

Both sides built and run on this runner in this job, the way
scripts/speed.sh measures a perf commit. Each round runs
both sides on a layout of its own, the same compiled code with
its code and data shuffled and moved, so the 95% interval carries
where the code landed as well as the run. The verdict holds the
interval against a 1% threshold. The default layout, the one a
release ships, is measured after as a diagnostic. The node
counts are the search's: they move when the search does, and a
speed change leaves them alone.

round     base nps  candidate nps  change
    1      4125641        4042977   -2.0%
    2      4107872        4084202   -0.6%
    3      4062815        4085400   +0.6%
    4      4054364        4039457   -0.4%
    5      4050458        4262541   +5.2%
    6      4120271        4231469   +2.7%
    7      4006609        4031546   +0.6%
    8      4133766        4166033   +0.8%
    9      4176141        4096044   -1.9%
   10      4287678        4135286   -3.6%
   11      4090741        4115384   +0.6%
   12      4044457        4098517   +1.3%
   13      4073224        4027701   -1.1%
   14      4071004        4070832   -0.0%
   15      4253402        4161385   -2.2%
   16      4243207        4255350   +0.3%
   17      4248495        4229550   -0.4%
   18      4169806        4177089   +0.2%
   19      4117483        3917990   -4.8%
   20      4188723        4179889   -0.2%
   21      4063251        4071307   +0.2%
   22      3918721        3894190   -0.6%
   23      4060898        4071802   +0.3%
   24      3996571        3982374   -0.4%
   25      4130716        3913402   -5.3%
   26      4092396        3942206   -3.7%
   27      4202885        4228885   +0.6%
   28      4028096        4209463   +4.5%
   29      4092340        4085756   -0.2%
   30      4186711        3998567   -4.5%
   31      4116451        4146770   +0.7%
   32      4003494        4117552   +2.8%
   33      4093742        4096703   +0.1%
   34      4295173        4044578   -5.8%
   35      4149405        4007914   -3.4%
   36      4166188        4105352   -1.5%
   37      4095585        4012488   -2.0%
   38      4095199        4031036   -1.6%
   39      4029557        4035925   +0.2%
   40      4034913        4032460   -0.1%

              nodes    time  median nps  faster half
base       11088536  2.71 s     4095392      4175780
candidate  11088536  2.71 s     4084801      4159221
change                            -0.3%        -0.4%

paired change -0.5%, 95% interval -1.3% to +0.1%
diagnostic, on the default layout alone +0.4%, 95% interval -0.4% to +1.8%, 13 rounds

not resolved: the interval reaches past ±1.0% without clearing it, so
more rounds are needed to say either way

Speed: -0.5% (bench nps, 95% interval -1.3% to +0.1%, 40 interleaved rounds over shuffled layouts vs 54fb9a68)

The instructions each side's bench executed, counted under
cachegrind. The count repeats to within a few hundred
instructions, so a small change here is a real one, but it
prices instructions only: cache misses, mispredicted branches
and where the code lands are the speed's to show.

instructions against 54fb9a68, one cachegrind run a side, bench

             instructions     nodes  per node
base       16,519,609,125  11088536    1489.8
candidate  16,519,609,168  11088536    1489.8
change             +0.00%              +0.00%

within ±0.7%, as far as edits not made for speed have moved the count

@aywrite
aywrite merged commit d82638a into master Oct 12, 2026
21 checks passed
@aywrite
aywrite deleted the claude/candidate-6-root-effort-2q00jf branch October 12, 2026 06:41
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