1
0
Fork 0
stockfish/src
noobpwnftw 9048ac00db Fix processor group binding under Windows.
Starting with Windows Build 20348 the behavior of the numa API has been changed:
https://docs.microsoft.com/en-us/windows/win32/procthread/numa-support

Old code only worked because there was probably a limit on how many
cores/threads can reside within one NUMA node, and the OS creates extra NUMA
nodes when necessary, however the actual mechanism of core binding is
done by "Processor Groups"(https://docs.microsoft.com/en-us/windows/win32/procthread/processor-groups). With a newer OS, one NUMA node can have many
such "Processor Groups" and we should just consistently use the number
of groups to bind the threads instead of deriving the topology from
the number of NUMA nodes.

This change is required to spread threads on all cores on Windows 11 with
a 3990X CPU. It has only 1 NUMA node with 2 groups of 64 threads each.

closes https://github.com/official-stockfish/Stockfish/pull/3787

No functional change.
2021-11-15 18:19:53 +01:00
..
incbin Embed default net, and simplify using non-default nets 2020-08-29 21:56:00 +02:00
nnue Rewrite NNUE evaluation adjustments 2021-10-23 12:22:02 +02:00
syzygy Fix a rare case of wrong TB ranking 2021-06-14 17:28:30 +02:00
Makefile Do not output to stderr during the build. 2021-10-31 22:40:41 +01:00
benchmark.cpp Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
bitbase.cpp Small cleanups (march 2021) 2021-03-24 17:11:06 +01:00
bitboard.cpp Small clean-up 2021-03-31 08:12:25 +02:00
bitboard.h Small clean-up 2021-03-31 08:12:25 +02:00
endgame.cpp Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
endgame.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
evaluate.cpp Tune a few NNUE related scaling parameters 2021-11-11 00:56:57 +01:00
evaluate.h Small clean-up, Sept 2021 2021-10-07 09:41:57 +02:00
main.cpp Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
material.cpp Small cleanups (march 2021) 2021-03-24 17:11:06 +01:00
material.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
misc.cpp Fix processor group binding under Windows. 2021-11-15 18:19:53 +01:00
misc.h Simplify away ValueListInserter 2021-10-23 12:21:17 +02:00
movegen.cpp Simplify Declaration on Pawn Move Generation 2021-08-22 09:15:19 +02:00
movegen.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
movepick.cpp Simplify lowply-history scoring logic 2021-07-23 18:53:03 +02:00
movepick.h Adjust ButterflyHistory decay parameter 2021-10-24 22:17:55 +02:00
pawns.cpp Small cleanups (march 2021) 2021-03-24 17:11:06 +01:00
pawns.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
position.cpp Fix sometimes incorrect key for prefetches 2021-10-25 12:26:44 +02:00
position.h Change trace with NNUE eval support 2021-06-19 11:57:01 +02:00
psqt.cpp Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
psqt.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
search.cpp Simplify away the Reverse Move penalty 2021-11-08 13:14:18 +01:00
search.h Tweak initial aspiration window. 2021-11-05 22:22:30 +01:00
simd.h Optimize and tidy up affine transform code. 2021-08-20 08:50:25 +02:00
thread.cpp Small cleanups (march 2021) 2021-03-24 17:11:06 +01:00
thread.h Reduce use of lazyEval 2021-11-08 13:03:52 +01:00
thread_win32_osx.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
timeman.cpp Combo of various parameter tweaks 2021-09-21 19:48:40 +02:00
timeman.h Remove Tempo 2021-05-19 20:34:37 +02:00
tt.cpp Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
tt.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
tune.cpp Remove BoolConditions from tuning code 2021-05-15 09:40:40 +02:00
tune.h Remove BoolConditions from tuning code 2021-05-15 09:40:40 +02:00
types.h Simplify away the Reverse Move penalty 2021-11-08 13:14:18 +01:00
uci.cpp Update WDL model for NNUE 2021-06-28 21:13:30 +02:00
uci.h Add Stockfish namespace. 2021-03-07 14:26:54 +01:00
ucioption.cpp Improve handling of the debug log file. 2021-08-20 07:57:09 +02:00