1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-04-29 16:23:09 +00:00
BadFish/src
Joost VandeVondele d5f883ab29 Improve multi-threaded mate finding
If any thread found a 'mate in x' stop the search. Previously only
mainThread would do so. Requires the bestThread selection to be
adjusted to always prefer mate scores, even if the search depth is less.

I've tried to collect some data for this patch. On 30 cores, mate finding
seems 5-30% faster on average. It is not so easy to get numbers for this,
as the time to find a mate fluctuates significantly with multi-threaded runs,
so it is an average over 100 searches for the same position. Furthermore,
hash size and position make a difference as well.

Bench: 5965302
2017-08-26 09:53:34 +02:00
..
syzygy Run clang-tidy 'modernize' 2017-08-13 05:46:21 -07:00
benchmark.cpp Wide bench coverage 2017-08-19 13:58:12 +02:00
bitbase.cpp Retire the misdesigned StepAttacks[] array. 2017-04-28 20:33:30 -07:00
bitboard.cpp Indentation fix in index() 2017-07-02 22:00:29 -07:00
bitboard.h Avoid constructing an empty tuple in qsearch 2017-08-22 10:16:19 +02:00
endgame.cpp Fix the handling of opposite bishops in KXK endgame evaluation 2017-08-12 02:47:11 -07:00
endgame.h Run clang-tidy 'modernize' 2017-08-13 05:46:21 -07:00
evaluate.cpp Count all weak squares in the king ring with a single popcount 2017-08-26 09:34:27 +02:00
evaluate.h Improve readability of evaluation functions 2017-06-21 14:01:59 -07:00
main.cpp Thread code reformat 2017-08-13 04:41:59 -07:00
Makefile Revert "Remove questionable gcc flags from profile-build" 2017-07-13 16:36:27 -07:00
material.cpp Move game_phase() to material.cpp 2017-07-15 07:28:38 +02:00
material.h Reorder members of Material::Entry 2017-02-23 21:33:03 -08:00
misc.cpp Run clang-tidy 'modernize' 2017-08-13 05:46:21 -07:00
misc.h Fix pawn entry prefetch 2017-03-14 20:56:26 -07:00
movegen.cpp Retire the misdesigned StepAttacks[] array. 2017-04-28 20:33:30 -07:00
movegen.h Fix involuntary conversions of ExtMove to Move 2017-08-17 02:04:00 -07:00
movepick.cpp Avoid constructing an empty tuple in qsearch 2017-08-22 10:16:19 +02:00
movepick.h Avoid constructing an empty tuple in qsearch 2017-08-22 10:16:19 +02:00
pawns.cpp Tweak connected pawns seed[] array values 2017-08-01 18:41:29 -07:00
pawns.h Adjust copyright headers to 2017 (#965) 2017-01-11 08:46:29 +01:00
position.cpp Move game_phase() to material.cpp 2017-07-15 07:28:38 +02:00
position.h Retire States global variable 2017-08-12 23:54:48 -07:00
psqt.cpp Tuned PSQT using a custom tuner. 2017-07-23 17:35:44 -07:00
search.cpp Improve multi-threaded mate finding 2017-08-26 09:53:34 +02:00
search.h Restore perft 2017-08-18 09:04:38 -07:00
thread.cpp Fix incorrect StateInfo 2017-08-14 23:01:58 -07:00
thread.h Run clang-tidy 'modernize' 2017-08-13 05:46:21 -07:00
thread_win32.h Adjust copyright headers to 2017 (#965) 2017-01-11 08:46:29 +01:00
timeman.cpp Restore safety margin of 60ms 2017-08-20 20:00:31 +08:00
timeman.h Adjust copyright headers to 2017 (#965) 2017-01-11 08:46:29 +01:00
tt.cpp Adjust copyright headers to 2017 (#965) 2017-01-11 08:46:29 +01:00
tt.h Adjust copyright headers to 2017 (#965) 2017-01-11 08:46:29 +01:00
types.h Fix some Clang warnings 2017-08-19 14:32:31 +02:00
uci.cpp Wide bench coverage 2017-08-19 13:58:12 +02:00
uci.h Adjust copyright headers to 2017 (#965) 2017-01-11 08:46:29 +01:00
ucioption.cpp Restore safety margin of 60ms 2017-08-20 20:00:31 +08:00