Finished
StrongRecklessquality_bonus2diff40.0+0.40
LLR: -2.27 (-2.25, 2.89) [0.00, 3.00]
Games: 61288 W: 15176 L: 15175 D: 30937
Ptnml(0-2): 35, 6294, 17988, 6289, 38
quality bonus for Exact entries during transposition table replacement
StrongRecklessquality_bonus2diff8.0+0.08
LLR: 2.91 (-2.25, 2.89) [0.00, 3.00]
Games: 37136 W: 9672 L: 9423 D: 18041
Ptnml(0-2): 124, 4035, 10007, 4272, 130
quality bonus for Exact entries during transposition table replacement
StrongRecklessquality_bonusdiff40.0+0.40
LLR: -0.48 (-2.25, 2.89) [0.00, 3.00]
Games: 123864 W: 30644 L: 30425 D: 62795
Ptnml(0-2): 55, 12592, 36412, 12825, 48
StrongRecklessquality_bonusdiff8.0+0.08
LLR: 2.93 (-2.25, 2.89) [0.00, 3.00]
Games: 19082 W: 4935 L: 4725 D: 9422
Ptnml(0-2): 48, 2040, 5181, 2198, 74
prioritize quality bonus to Exact entries
StrongRecklesstt_agediff8.0+0.08
LLR: -2.54 (-2.25, 2.89) [0.00, 3.00]
Games: 60550 W: 15403 L: 15420 D: 29727
Ptnml(0-2): 233, 7098, 15659, 7023, 262
try larger factor
StrongRecklessis_same_keydiff8.0+0.08
LLR: -2.30 (-2.25, 2.89) [0.00, 3.00]
Games: 18494 W: 4692 L: 4789 D: 9013
Ptnml(0-2): 91, 2180, 4804, 2079, 93
we check that we're writing to the same entry inside a cluster of 3
StrongRecklessttdiff4.0+0.04
LLR: -2.26 (-2.25, 2.89) [0.00, 3.00]
Games: 21012 W: 5447 L: 5538 D: 10027
Ptnml(0-2): 124, 2520, 5310, 2427, 125
double TT cluster size and use SSE2 for key lookups
StrongRecklessleast_seediff4.0+0.04
LLR: 2.91 (-2.25, 2.89) [0.00, 3.00]
Games: 129900 W: 34216 L: 33746 D: 61938
Ptnml(0-2): 750, 14508, 34018, 14870, 804
try masking in least_valuable_attacker
StrongRecklessbounddiff4.0+0.04
LLR: 0.42 (-2.25, 2.89) [0.00, 3.00]
Games: 105920 W: 27641 L: 27381 D: 50898
Ptnml(0-2): 554, 11644, 28281, 11950, 531
use transmute
StrongRecklessslidingdiff4.0+0.04
LLR: -2.40 (-2.25, 2.89) [0.00, 3.00]
Games: 34396 W: 8885 L: 8951 D: 16560
Ptnml(0-2): 159, 3879, 9191, 3807, 162
slightly faster, hopefully
StrongRecklesshybriddiff4.0+0.04
LLR: -2.39 (-2.25, 2.89) [0.00, 3.00]
Games: 34168 W: 8751 L: 8819 D: 16598
Ptnml(0-2): 212, 3934, 8845, 3896, 197
retest
StrongRecklesshybriddiff4.0+0.04
LLR: 3.00 (-2.25, 2.89) [-2.75, 0.25]
Games: 38944 W: 10085 L: 9978 D: 18881
Ptnml(0-2): 195, 4327, 10340, 4396, 214
try scalar bishop attacks for low popcount
StrongRecklessknight_attacksdiff4.0+0.04
LLR: 2.90 (-2.25, 2.89) [-2.75, 0.25]
Games: 16110 W: 4254 L: 4114 D: 7742
Ptnml(0-2): 66, 1725, 4322, 1887, 55
optimize knight_attacks_setwise
StrongRecklessfaillowdiff4.0+0.04
LLR: -10.34 (-2.25, 2.89) [-2.75, 0.25]
Games: 2590 W: 283 L: 1414 D: 893
Ptnml(0-2): 277, 618, 361, 37, 2
fail low
StrongRecklessmul_adddiff4.0+0.04
LLR: 0.00 (-2.25, 2.89) [0.00, 3.00]
Games: 0 W: 0 L: 0 D: 0
Ptnml(0-2): 0, 0, 0, 0, 0
use mul_add and rotate instead of remove/add
StrongRecklessnoclampdiff4.0+0.04
LLR: -2.48 (-2.25, 2.89) [0.00, 3.00]
Games: 17290 W: 4351 L: 4458 D: 8481
Ptnml(0-2): 71, 1965, 4679, 1860, 70
will maxmin beat clamp for i32?
StrongRecklessnoclampdiff4.0+0.04
LLR: 3.13 (-2.25, 2.89) [0.00, 3.00]
Games: 15748 W: 4184 L: 3959 D: 7605
Ptnml(0-2): 89, 1679, 4121, 1888, 97
.clamp can produce suboptimal code. this replaces it with custom functions that do max then min.
StrongRecklesspointerdiff4.0+0.04
LLR: -2.27 (-2.25, 2.89) [-2.75, 0.25]
Games: 25230 W: 6399 L: 6581 D: 12250
Ptnml(0-2): 118, 2941, 6689, 2739, 128
rename for clarity [Approver's Remark] is use of simpl bounds here correct? rfc