https://openbenchmarking.org/test/pts/stockfish
Ну вот допустим.
2 место - новенький серверный проц, двойной. Новее сапфайр рапидс.
128 ядер / 256 потоков, 200 mnps.
А вот там ниже ризены идут, 32 ядра / 64 потока - 60mnps, т.е. на поток больше на 20%.
А ещё ниже 24 ядра / 48 потоков - 55 mnps, ещё на 10% больше почти.
При этом первый проц 19 года, второй 21 или 22, какого там?
И да, это стокфиш 16.1, т.е. с тяжелейшей сетью, обработка которой и занимает где-то в районе 80% времени при игре.
Но даже если взять какие-то процы из нижних, где там вообще мобильные, выйдет на 8 потоков типа 5,2 mnps, что всего-то на 20% медленнее, чем серверный процессор, так это ещё и процу 4 года и он мобильный.
Michael_S: Вы не загнули на счет "каждого ядра" ? На Sapphire Rapids может и выйдет так, если логические операции считать вместе с арифметическими. А чисто арифметических (+, -) меньше. Целочисленных умножений и того меньше.
Но то на Sapphire Rapids, который есть чисто серверный процессор. На том, чем люди пользуются, еще в полтора-два раза меньше всех и всяческих векторных операций. А если интелевские "экономичные" ядра за ядра считать, то там, я думаю, придется ваши цифры делить на 6.
Я ориентировался прежде всего на AMD Zen, но насколько мне известно, наличие векторов сейчас стандарт практически для любого процессора.
Давайте посчитаем вместе. Может быть я где-то ошибся, ибо не специалист по электронике. Вот структура одного ядра Zen:
Векторные операции выполняются в секторе FLOAT (коричневом). Одновременно может вычисляться 4 пары 256-битных векторов. Два из них могут выполнять только сложение (Add), а два умножение + сложение (FMA).
Каждый 256-битный вектор может содержать пакет из 32-х восьмибитных чисел. Таким образом каждый модуль Add может выполнять 32 целочисленных восьмибитных операций сложения за такт. Каждый модуль Mul (FMA) выполняет вдвое больше - 64 операции. Итого имеем 2х64 + 2х32 = 192 операции за такт.
Michael_S: Вы не загнули на счет "каждого ядра" ? На Sapphire Rapids может и выйдет так, если логические операции считать вместе с арифметическими. А чисто арифметических (+, -) меньше. Целочисленных умножений и того меньше.
Но то на Sapphire Rapids, который есть чисто серверный процессор. На том, чем люди пользуются, еще в полтора-два раза меньше всех и всяческих векторных операций. А если интелевские "экономичные" ядра за ядра считать, то там, я думаю, придется ваши цифры делить на 6.
Я ориентировался прежде всего на AMD Zen, но насколько мне известно, наличие векторов сейчас стандарт практически для любого процессора.
Давайте посчитаем вместе. Может быть я где-то ошибся, ибо не специалист по электронике. Вот структура одного ядра Zen:
Векторные операции выполняются в секторе FLOAT (коричневом). Одновременно может вычисляться 4 пары 256-битных векторов. Два из них могут выполнять только сложение (Add), а два умножение + сложение (FMA).
Каждый 256-битный вектор может содержать пакет из 32-х восьмибитных чисел. Таким образом каждый модуль Add может выполнять 32 целочисленных восьмибитных операций сложения за такт. Каждый модуль Mul (FMA) выполняет вдвое больше - 64 операции. Итого имеем 2х64 + 2х32 = 192 операции за такт.
Надо смотреть детали.
Про производительность 8-битных FMA, про то, пригодны ли 8-битные FMA для inferrence, про то, если пригодны, могут ли при этом два оставшихся АЛУ делать что-нибудь полезное, или количество необходимых сложений не больше, чем количество умножений (что есть самый частый случай в алгоритмах типа свертки и перемножения матриц) а значит, делать тем АЛУ особо нечего.
Опять же, какой Zen? Zen3 и Zen4 не совсем одинаковые, 2 вообще гораздо слабей, про 1 и не говорю.
Сейчас нет времени углубляться, возможно, завтра вечером, но не обещаю.
В пулю 60+0.1 4-1 стокфиш пока ведёт (на табло 3-2, но это из-за просрочки в выигранной позиции, т.к. никто толком не знает, что там за настройки ставить на таком контроле и 101 ядре, так что считаю эту проигранную партию выигранной ).
Причём одна победа чёрными.
https://tcec-chess.com/#div=bcb&game=77&season=26
Что у вас на аброке за последние патчи.. Новая сетка не столько даёт, сколько они +5, а то и вовсе +10. Это серьёзно так или что-то чисто для определенных контролей? Shawn Xu -- вообще не помню такого
StenR: Что у вас на аброке за последние патчи.. Новая сетка не столько даёт, сколько они +5, а то и вовсе +10. Это серьёзно так или что-то чисто для определенных контролей? Shawn Xu -- вообще не помню такого
Там получился замечательный идиотизм, случайно поставили несимметричный размер хэша в одном из патчей, его откатят скоро.
Ну а +5/3 нормальный перформанс для тюнинга на очень длинном контроле в целом.
Может быть выше уже спрашивали, но я не нашел: какая версия Stockfish из перечисленных лучше подходит для современного процессора?
Windows x64 for Haswell CPUs
Windows x64 for modern computers + AVX2
Windows x64 for modern computers
Windows x64 + SSSE3
Windows x64
Вот это эндшпиль.
Кроме стокфиша все думали, что белым не добиться прогресса.
А вообще что теория говорит про такие вот разноцветы с ладьями? Ведь позиция максимально типовая.
Понятно, что у белых перевес, но находится конкретная реализация.
Ng5!! hg
Bxh7! Kh8
hg!! Rxf3
Bf5! Kh8
Bxe6 Rf7
g6 Rf8
Rh3! (единственное, но достаточное) Qxd4
Rdh1 Qh4 (у чёрных ферзь и два коня за две пешки и слона, но приходится всё отдать, чтобы мат не получить)
Rxh4 Bxh4
Rxh4 Nc5
И после двойного "размена" на f7 (слона и пешки на двух ладей) материальный перевес решает.
Vizvezdenec: Вот это эндшпиль.
Кроме стокфиша все думали, что белым не добиться прогресса.
А вообще что теория говорит про такие вот разноцветы с ладьями? Ведь позиция максимально типовая.
Да я бы не сказал, что типовая. Это без ладей она типовая, а такого рода ладейные разноцветы с заблокированными пешками на одном фланге редко получаются. На вид, конечно, крепость была...
Ну вроде как стокфиш почти сразу оценку поднимать стал, а это обычно значит, что на самом деле не держится.
Наверняка можно с помощью того инструмента для адвансеров сделать мини-8-фигурную таблицу для такого эндшпиля и выяснить объективно.
Делать я этого, конечно же, не буду.
Как это не прискорбно, но для улучшения стокфиша не обязательно быть хорошим шахматистом.
Я бы даже сказал, что это, скорее всего, вредит.
У нас вообще очень немного людей, которые даже имеют рейтинг ФИДЕ, самый высокий был у одного разработчика 2155, но и тот в основном патчи на поиск писал (а когда он был активен - классическая оценка была единственной, под неё много патчей писал я ).
Зато есть руководитель кафедры computer science в университете Цюриха (или какая-то подобная должность), дважды вице-чемпион мира по реверси/один раз по авалону и т.д.
Да, спасибо за поздравления, кстати.
Вообще прогресс в движках очень сильно пошёл как раз тогда, когда всё это стало работать на энтузиазме.
Потому что обмен идеями, набор железа для тестирования и т.д. проще делать в такой сфере среди энтузиастов, нежели среди каких-то компаний, которых будут интересовать только деньги.