06.06.2016, 11:17 | #1 |
Администратор
Регистрация: 24.05.2016
Сообщений: 4,186
Сказал(а) спасибо: 7,165
Поблагодарили 7,655 раз(а) в 3,086 сообщениях
Репутация: 348
|
"Железо" для шахматных программ.
Тема по компьютерам и комплектующим, желательно в связи с шахматными программами.
|
5 пользователя(ей) сказали cпасибо: | Alexandr_L (09.09.2017), Chess62 (27.05.2021), ChessMan (11.01.2019), Rybka (02.12.2021), Сирота криворожская (06.11.2021) |
05.09.2020, 23:15 | #4021 |
Гроссмейстер
|
Re: "Железо" для шахматных программ.
Кстати такой вопрос: что делать с виртуальными потоками процессора?
На них можно тестировать в кьютчесс? Было б неплохо вместо теперешних 6-7 запускать сразу 40 одновременных партий! И в аквариумной идее они работают? Или только физические ядра имеют смысл?
__________________
PGN Spy - top tournaments |
05.09.2020, 23:40 | #4022 |
КМС
Регистрация: 21.11.2016
Сообщений: 709
Сказал(а) спасибо: 433
Поблагодарили 1,545 раз(а) в 582 сообщениях
Репутация: 197
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от Переяслав
На них можно тестировать в кьютчесс? Было б неплохо вместо теперешних 6-7 запускать сразу 40 одновременных партий!
|
Пользователь сказал cпасибо: | Переяслав (06.09.2020) |
05.09.2020, 23:45 | #4023 |
Super Moderator
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от Переяслав
Кстати такой вопрос: что делать с виртуальными потоками процессора?
На них можно тестировать в кьютчесс? Было б неплохо вместо теперешних 6-7 запускать сразу 40 одновременных партий! И в аквариумной идее они работают? Или только физические ядра имеют смысл? https://forchess.ru/showpost.php?p=1...postcount=1495 https://forchess.ru/showpost.php?p=1...postcount=1496 На 12-ти: средняя скорость 23200 kN/s = ~1933 kN/s на ядро На 24-х: средняя скорость 34077 kN/s = ~1420 kN/s на поток Тестировать в CuteChess можно, но придется увеличить контроль процентов на 35-40. Хотя для Вашей железяки это соотношение может отличаться. Плюс частота процессора может меняться в зависимости от загрузки ядер/потоков. Также следует учесть возможный перегрев и повышение напряжения на ЦП, что приводит к деградации. В IDeA они работают, но учтите то что я написал выше о падении скорости на ядро/поток, а также то что размер хэша на каждый движок в Акве будет меньше с гипертридингом. Больше по этому вопросу Вам сможет подсказать Viktor. ================= UPD: лично я использую только физические ядра для тестирования движков (10 из 12... 2 на систему) и для анализа. |
Пользователь сказал cпасибо: | Переяслав (06.09.2020) |
06.09.2020, 00:35 | #4024 |
Гроссмейстер
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от ChessMan
В IDeA они работают, но учтите то что я написал выше о падении скорости на ядро/поток
Цитата: Сообщение от ChessMan
лично я использую только физические ядра для тестирования движков (10 из 12... 2 на систему) и для анализа.
__________________
PGN Spy - top tournaments |
06.09.2020, 19:39 | #4025 |
КМС
Регистрация: 21.11.2016
Сообщений: 709
Сказал(а) спасибо: 433
Поблагодарили 1,545 раз(а) в 582 сообщениях
Репутация: 197
|
Re: "Железо" для шахматных программ.
Тесты пройдут быстрее, но они будут недостоверными - разные движки по-разному загружают ядра, плюс приоритет процессов будет зависеть от положения звезд. Физически обсчитывателей инструкций в процессоре столько, сколько ядер, HT - в большой степени маркетинговый трюк
|
3 пользователя(ей) сказали cпасибо: |
07.09.2020, 00:00 | #4026 |
Эксперт
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от Aster
Физически обсчитывателей инструкций в процессоре столько, сколько ядер, HT - в большой степени маркетинговый трюк
Вот некий поток ждет данные с ОЗУ (а может быть даже и с очень далекого SSD), HT - отсутствует. Что происходит? Да то и происходит - CPU ждет сотни тактов (в случае SSD - сотни тысяч тактов). А если HT есть? Тогда с некоторой (не нуль, но и конечно не 100%) вероятностью данные для этого потока найдутся в L3 кеше, а может и в L2. Т.е. можно выполнять код, и не пропускать циклы. Это ведет к бОльшей утилизации CPU, большему энергопотреблению, и большему нагреву, что влечет увеличение производительности. В реальных шахматах например это сплошь и рядом, скажем при работе с таблицами (ожидание данных с диска - типовая задача). В тестах - ну смотря как организованы оные. |
Пользователь сказал cпасибо: | Переяслав (07.09.2020) |
07.09.2020, 00:09 | #4027 |
КМС
Регистрация: 21.11.2016
Сообщений: 709
Сказал(а) спасибо: 433
Поблагодарили 1,545 раз(а) в 582 сообщениях
Репутация: 197
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от Maratka
В тестах - ну смотря как организованы оные. Перяслав тестирует на УКК - там внезапная потеря пары секунд (ядро-то занято) может серьезно навредить движку. Как по мне, легко проверить - запустить матч *разных* движков (а-ля CFish, stock, komodo) и посмотреть на разницу результатов с HT и без него. Сильно подозреваю, что различия будут. |
2 пользователя(ей) сказали cпасибо: | sergey1963 (07.09.2020), Переяслав (07.09.2020) |
07.09.2020, 00:24 | #4028 |
Эксперт
Регистрация: 31.05.2016
Сообщений: 6,474
Сказал(а) спасибо: 10,473
Поблагодарили 6,624 раз(а) в 3,608 сообщениях
Репутация: 467
|
Re: "Железо" для шахматных программ.
Да все верно- присоединюсь к Астеру- НТ хорош только при малой и средней нагрузке... Недаром в Гудини он не использовался и автор был против этой "доппомощи", а если еще вспомним чем в действительности оказались два последних Гудка- то как бы все и ясно...
|
07.09.2020, 02:09 | #4029 |
Гроссмейстер
Регистрация: 18.12.2016
Адрес: МО, Химки
Сообщений: 1,458
Сказал(а) спасибо: 1,217
Поблагодарили 1,819 раз(а) в 920 сообщениях
Репутация: 182
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от sergey1963
Да все верно- присоединюсь к Астеру- НТ хорош только при малой и средней нагрузке... Недаром в Гудини он не использовался и автор был против этой "доппомощи", а если еще вспомним чем в действительности оказались два последних Гудка- то как бы все и ясно...
В мотивированных руках и старый Гудини - чемпион мира, имхо
__________________
Если подвергать действия окружающих логическому анализу, то можно случайно поднять себе настроение. |
07.09.2020, 10:06 | #4030 |
Эксперт
Регистрация: 31.05.2016
Сообщений: 6,474
Сказал(а) спасибо: 10,473
Поблагодарили 6,624 раз(а) в 3,608 сообщениях
Репутация: 467
|
Re: "Железо" для шахматных программ.
Костя- частично и "ради истории"- ты прав. Но на практике, играя с нормальным адвансером Гудком-6 (а это Сток-10)- ты рискуешь, как в староиндийке- игра на 2 результата... Можно вообще играть Рыбкой- мазохистов хватает...
|
09.09.2020, 14:12 | #4031 |
Гроссмейстер
|
Re: "Железо" для шахматных программ.
__________________
PGN Spy - top tournaments |
Пользователь сказал cпасибо: | SergeyMZ (09.09.2020) |
09.09.2020, 15:10 | #4032 |
Эксперт
Регистрация: 31.05.2016
Сообщений: 6,474
Сказал(а) спасибо: 10,473
Поблагодарили 6,624 раз(а) в 3,608 сообщениях
Репутация: 467
|
Re: "Железо" для шахматных программ.
Дроновым там и не пахло- зачем нагло обманывать?
Для 16х1080ti вполне хватит 32 ядерника- зачем больше-то? Само оборудование устарело лет на 5- 1080ти= 2070=3060, 2080ти=3070=0.6х3080ти |
09.09.2020, 16:07 | #4033 |
Гроссмейстер
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от sergey1963
Дроновым там и не пахло- зачем нагло обманывать?
__________________
PGN Spy - top tournaments |
10.09.2020, 02:27 | #4034 |
Гроссмейстер
|
Re: "Железо" для шахматных программ.
О разнице между физическими и виртуальными ядрами
Код:
20 Threads Games Completed = 315 of 1000 (Avg game length = 44.261 sec) Settings = Gauntlet/128MB/15000ms+150ms/M 699cp for 3 moves, D 119 moves/PGN:e:\Chess\LittleBlitzer-2.75\8moves_v3.pgn(32000) Time = 747 sec elapsed, 1623 sec remaining 1. Cfish 090920 157.5/315 40-40-235 (L: m=0 t=0 i=1 a=39) (D: r=161 i=32 f=13 s=2 a=27) (tpm=349.0 d=21.02 nps=1179883) 2. Stockfish 12 157.5/315 40-40-235 (L: m=0 t=0 i=0 a=40) (D: r=161 i=32 f=13 s=2 a=27) (tpm=347.4 d=21.48 nps=1118837) ----------------------------- ----------------------------- 40 Threads Games Completed = 317 of 1000 (Avg game length = 44.447 sec) Settings = Gauntlet/128MB/15000ms+150ms/M 699cp for 3 moves, D 119 moves/PGN:e:\Chess\LittleBlitzer-2.75\8moves_v3.pgn(32000) Time = 404 sec elapsed, 870 sec remaining 1. Cfish 090920 157.5/317 49-51-217 (L: m=0 t=0 i=0 a=51) (D: r=142 i=43 f=8 s=4 a=20) (tpm=353.9 d=19.13 nps=877884) 2. Stockfish 12 159.5/317 51-49-217 (L: m=0 t=0 i=0 a=49) (D: r=142 i=43 f=8 s=4 a=20) (tpm=353.7 d=19.14 nps=778029) 1. На силу игры движков не влияет (?) 2. При контроле 15+0,15 сек падение средней глубины ~ 10% 3. Падение скорости на движок ~ 25-30% 4. Зато время тестирования сокращается в 1,85 раза!
__________________
PGN Spy - top tournaments |
Пользователь сказал cпасибо: | SergeyMZ (10.09.2020) |
10.09.2020, 08:40 | #4035 |
Super Moderator
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от Переяслав
О разнице между физическими и виртуальными ядрами
Код:
20 Threads Games Completed = 315 of 1000 (Avg game length = 44.261 sec) Settings = Gauntlet/128MB/15000ms+150ms/M 699cp for 3 moves, D 119 moves/PGN:e:\Chess\LittleBlitzer-2.75\8moves_v3.pgn(32000) Time = 747 sec elapsed, 1623 sec remaining 1. Cfish 090920 157.5/315 40-40-235 (L: m=0 t=0 i=1 a=39) (D: r=161 i=32 f=13 s=2 a=27) (tpm=349.0 d=21.02 nps=1179883) 2. Stockfish 12 157.5/315 40-40-235 (L: m=0 t=0 i=0 a=40) (D: r=161 i=32 f=13 s=2 a=27) (tpm=347.4 d=21.48 nps=1118837) ----------------------------- ----------------------------- 40 Threads Games Completed = 317 of 1000 (Avg game length = 44.447 sec) Settings = Gauntlet/128MB/15000ms+150ms/M 699cp for 3 moves, D 119 moves/PGN:e:\Chess\LittleBlitzer-2.75\8moves_v3.pgn(32000) Time = 404 sec elapsed, 870 sec remaining 1. Cfish 090920 157.5/317 49-51-217 (L: m=0 t=0 i=0 a=51) (D: r=142 i=43 f=8 s=4 a=20) (tpm=353.9 d=19.13 nps=877884) 2. Stockfish 12 159.5/317 51-49-217 (L: m=0 t=0 i=0 a=49) (D: r=142 i=43 f=8 s=4 a=20) (tpm=353.7 d=19.14 nps=778029) 1. На силу игры движков не влияет (?) 2. При контроле 15+0,15 сек падение средней глубины ~ 10% 3. Падение скорости на движок ~ 25-30% 4. Зато время тестирования сокращается в 1,85 раза! В моих тестах AVX2 vs SSE4.2, после примерно 700 партий счет был равен. Потом AVX2 оторвался на 8 ЭЛО. Результаты в моей теме. |
Пользователь сказал cпасибо: | Alex_Lk (10.09.2020) |
10.09.2020, 10:15 | #4036 |
КМС
Регистрация: 21.11.2016
Сообщений: 709
Сказал(а) спасибо: 433
Поблагодарили 1,545 раз(а) в 582 сообщениях
Репутация: 197
|
Re: "Железо" для шахматных программ.
Лучше взять движки, которые работают принципиально по-разному, например NNUE и не-NNUE или, опять же, Комодо какого-нибудь. И да, больше партий - сейчас результаты не значимы
|
Пользователь сказал cпасибо: | Alex_Lk (10.09.2020) |
10.09.2020, 11:18 | #4037 |
Гроссмейстер
|
Re: "Железо" для шахматных программ.
И такой вопрос: если я ставлю 20 ядер, то автоматом берутся только физические из 24х? Или виртуальные тоже подмешиваются?
Если 25 то понятно - вроде как 24с + 1t и тд
__________________
PGN Spy - top tournaments |
10.09.2020, 12:00 | #4038 |
Мастер
Регистрация: 11.08.2017
Адрес: Киров
Сообщений: 912
Сказал(а) спасибо: 888
Поблагодарили 1,197 раз(а) в 632 сообщениях
Репутация: 132
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от Переяслав
И такой вопрос: если я ставлю 20 ядер, то автоматом берутся только физические из 24х? Или виртуальные тоже подмешиваются?
|
10.09.2020, 15:08 | #4039 |
Эксперт
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
|
Re: "Железо" для шахматных программ.
Там несколько более сложная схема.
На десктопе - так и будет. А вот для ноутбука, где важна автономность - при профиле на "энергосбережение" будет два потока на ядре, а соседнее (простаивающее) ядро будет запарковано, с фактически нулевой потребляемой мощностью. Профиль понятно можно изменить, но реально это мало кто из реальных людей делает. |
Пользователь сказал cпасибо: | Alex_Lk (11.09.2020) |
10.09.2020, 18:25 | #4040 |
КМС
Регистрация: 21.11.2016
Сообщений: 709
Сказал(а) спасибо: 433
Поблагодарили 1,545 раз(а) в 582 сообщениях
Репутация: 197
|
Re: "Железо" для шахматных программ.
На десктопе в биосе можно тоже изменить поведение системы и настройки энергосбережения. Но вообще потока заведует операционная система, поэтому что решит Виндоус, с тем и будете жить. Кроме Господа и сергея1963 никто не знает, что может случиться.
|
3 пользователя(ей) сказали cпасибо: |
12.09.2020, 21:34 | #4041 |
Гроссмейстер
|
Re: "Железо" для шахматных программ.
Код:
Score of Cfish 110920 vs Stockfish 080920: 113 - 137 - 750 [0.488] ... Cfish 110920 playing White: 80 - 40 - 380 [0.540] 500 ... Cfish 110920 playing Black: 33 - 97 - 370 [0.436] 500 ... White vs Black: 177 - 73 - 750 [0.552] 1000 Elo difference: -8.3 +/- 10.7, LOS: 6.5 %, DrawRatio: 75.0 % 1000 of 1000 games finished. TC=15"+0.15" Как итог - для тестирования движков в одном потоке действительно нет никакого смысла запускать виртуальные ядра (хоть это и так прикольно - всего 24 минуты весь тест шел), ибо результаты будут некорректные.
__________________
PGN Spy - top tournaments |
Пользователь сказал cпасибо: | byan_mivv (12.09.2020) |
12.09.2020, 22:27 | #4043 |
Super Moderator
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от Переяслав
Код:
Score of Cfish 110920 vs Stockfish 080920: 113 - 137 - 750 [0.488] ... Cfish 110920 playing White: 80 - 40 - 380 [0.540] 500 ... Cfish 110920 playing Black: 33 - 97 - 370 [0.436] 500 ... White vs Black: 177 - 73 - 750 [0.552] 1000 Elo difference: -8.3 +/- 10.7, LOS: 6.5 %, DrawRatio: 75.0 % 1000 of 1000 games finished. TC=15"+0.15" Как итог - для тестирования движков в одном потоке действительно нет никакого смысла запускать виртуальные ядра (хоть это и так прикольно - всего 24 минуты весь тест шел), ибо результаты будут некорректные. =========== Если этот баг не исправлен... Когда-то давно в тестах Burcontovk'а была такая проблема. |
Пользователь сказал cпасибо: | Переяслав (12.09.2020) |
12.09.2020, 22:35 | #4044 |
Super Moderator
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
|
Re: "Железо" для шахматных программ.
P.S: если в настройках СиФиша отображается опция "NUMA" - попробуйте после второго теста её отключить - вместо all - none.
Не знаю, будет ли она у Вас отображаться - это ещё и от ОС зависит, не только от наличия более одного процессора. В принципе, могу специально для Вас делать компиляцию без НУМА кода - тогда будет нормально работать в таких тестах. |
12.09.2020, 22:55 | #4045 |
Эксперт
Регистрация: 31.05.2016
Сообщений: 6,474
Сказал(а) спасибо: 10,473
Поблагодарили 6,624 раз(а) в 3,608 сообщениях
Репутация: 467
|
Re: "Железо" для шахматных программ.
как-то так-
=>:uci Cfish 090920 64 BMI2 NUMA by Syzygy based on Stockfish id name Cfish 090920 64 BMI2 NUMA id author The Stockfish developers option name Contempt type spin default 24 min -100 max 100 option name Analysis Contempt type combo default Off var Off var White var Black option name Threads type spin default 1 min 1 max 512 option name Hash type spin default 16 min 1 max 33554432 option name Clear Hash type button option name Ponder type check default false option name MultiPV type spin default 1 min 1 max 500 option name Move Overhead type spin default 10 min 0 max 5000 option name Slow Mover type spin default 100 min 10 max 1000 option name nodestime type spin default 0 min 0 max 10000 option name UCI_AnalyseMode type check default false option name UCI_Chess960 type check default false option name SyzygyPath type string default <empty> option name SyzygyProbeDepth type spin default 1 min 1 max 100 option name Syzygy50MoveRule type check default true option name SyzygyProbeLimit type spin default 7 min 0 max 7 option name SyzygyUseDTM type check default true option name BookFile type string default <empty> option name BestBookMove type check default true option name BookDepth type spin default 255 min 1 max 255 option name EvalFile type string default nn-308d71810dff.nnue option name Use NNUE type combo default Hybrid var Hybrid var Pure var Classical option name LargePages type check default true uciok |
12.09.2020, 23:04 | #4046 |
Super Moderator
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от sergey1963
как-то так-
=>:uci Cfish 090920 64 BMI2 NUMA by Syzygy based on Stockfish id name Cfish 090920 64 BMI2 NUMA id author The Stockfish developers option name Contempt type spin default 24 min -100 max 100 option name Analysis Contempt type combo default Off var Off var White var Black option name Threads type spin default 1 min 1 max 512 option name Hash type spin default 16 min 1 max 33554432 option name Clear Hash type button option name Ponder type check default false option name MultiPV type spin default 1 min 1 max 500 option name Move Overhead type spin default 10 min 0 max 5000 option name Slow Mover type spin default 100 min 10 max 1000 option name nodestime type spin default 0 min 0 max 10000 option name UCI_AnalyseMode type check default false option name UCI_Chess960 type check default false option name SyzygyPath type string default <empty> option name SyzygyProbeDepth type spin default 1 min 1 max 100 option name Syzygy50MoveRule type check default true option name SyzygyProbeLimit type spin default 7 min 0 max 7 option name SyzygyUseDTM type check default true option name BookFile type string default <empty> option name BestBookMove type check default true option name BookDepth type spin default 255 min 1 max 255 option name EvalFile type string default nn-308d71810dff.nnue option name Use NNUE type combo default Hybrid var Hybrid var Pure var Classical option name LargePages type check default true uciok Если нет - то ничего странного в отсутствии опции "NUMA"... Опция будет видна только если имеется несколько процессоров и подходящая ОС... Ну или если кое-что изменить в исходном коде. |
Пользователь сказал cпасибо: | sergey1963 (12.09.2020) |
12.09.2020, 23:16 | #4047 |
Гроссмейстер
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от ChessMan
Так это известный баг. Запустите тест СиФиша против СиФиша в этих же условиях и посмотрите на загрузку ЦП - загрузка будет ~50%, так как все копии СиФиша будут алоцироваться на первый процессор.
=========== Если этот баг не исправлен... Когда-то давно в тестах Burcontovk'а была такая проблема. Пока ничо не пойму...
__________________
PGN Spy - top tournaments |
12.09.2020, 23:19 | #4048 |
Гроссмейстер
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от ChessMan
P.S: если в настройках СиФиша отображается опция "NUMA" - попробуйте после второго теста её отключить - вместо all - none.
Цитата: Сообщение от ChessMan
В принципе, могу специально для Вас делать компиляцию без НУМА кода - тогда будет нормально работать в таких тестах.
__________________
PGN Spy - top tournaments |
Пользователь сказал cпасибо: | ChessMan (12.09.2020) |
12.09.2020, 23:20 | #4049 |
Super Moderator
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от ChessMan
У Вас мультипроцессорная система?
Если нет - то ничего странного в отсутствии опции "NUMA"... Опция будет видна только если имеется несколько процессоров и подходящая ОС... Ну или если кое-что изменить в исходном коде. |
12.09.2020, 23:22 | #4050 |
Super Moderator
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
|
Re: "Железо" для шахматных программ.
Цитата: Сообщение от Переяслав
И как оно ттогда будет на 40 потоках играть? Я чо-то ваще запутался
При использовании всех потоков - не знаю точно... Возможно сама ОС справится с правильной алокацией потоков. Сейчас соберу версию без НУМЫ - проверите |
Здесь присутствуют: 3 (пользователей: 0 , гостей: 3) | |
|
|