Forchess - форум о заочных шахматах  

Вернуться   Forchess - форум о заочных шахматах > Заочные турниры и партии > Шахматные программы и движки > Турниры и сборки движков

Ответ
 
Опции темы Опции просмотра
Старый 31.08.2017, 21:30   #1
ChessMan
Super Moderator
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Компиляции движков от ChessMan

Stockfish 14
https://forchess.ru/showpost.php?p=1...postcount=2069

Cfish 260621 x32-x64
https://forchess.ru/showpost.php?p=1...postcount=2057

Cfish 250621 x32-x64 (unofficial)
https://forchess.ru/showpost.php?p=1...postcount=2051

Cfish 240621 x32-x64 (unofficial)
https://forchess.ru/showpost.php?p=1...postcount=2044

Cfish 13u x32-x64 (unofficial)
https://forchess.ru/showpost.php?p=1...postcount=2003

Stockfish 180521 x32-x64
https://forchess.ru/showpost.php?p=1...postcount=2002


Stockfish_FF2 150521 x32-x64
https://forchess.ru/showpost.php?p=1...postcount=1995

Unofficial Cfish 090521 x32-x64
https://forchess.ru/showpost.php?p=1...postcount=1993

Unofficial Cfish 020521 x32-x64
https://forchess.ru/showpost.php?p=1...postcount=1989


Unofficial Cfish 280421 x32-x64
https://forchess.ru/showpost.php?p=1...postcount=1973

SugaR AI 2.00
https://forchess.ru/showpost.php?p=1...postcount=1957


Stockfish 160421
https://forchess.ru/showpost.php?p=1...postcount=1948

Stockfish_FF2 250221 x32-x64
https://forchess.ru/showpost.php?p=1...postcount=1917

CiChess 040121 x32-x64
https://forchess.ru/showpost.php?p=1...postcount=1906

CF_EXT 040121 x32-x64
https://forchess.ru/showpost.php?p=1...postcount=1905


Cfish 261220 x32-x64
https://forchess.ru/showpost.php?p=1...postcount=1886


=================================
=================================

Развернуть для просмотра

Движки, которые я компилирую:

Cfish - порт Стокфиша на язык "С", автор Ronald De Man (aka Syzygy)
https://github.com/syzygy1/Cfish

CorChess - дериват Стокфиша, автор Ivan Ivec
http://chess.ultimaiq.net/corchess.html
https://github.com/IIvec/Stockfish/tree/corchess
"CorChess is a clone of Stockfish maintained for better performance on long time controls,
trying at least partially to fill the gap between regular tests and demands of correspondence players."


CF_EXT - тот же Cfish, но с добавлением дополнительных UCI опций

CiChess - порт движка CorChess на язык "С", плюс дополнительные UCI опции


==============

Немного информации об опциях:

Развернуть для просмотра



"Variety"
Add a little variety to play.
The greater the value, the more various moves will be played, the more often the engine will not play along the first line.
Not tested in infinite analysis mode.


"Wide Search"
multiPV=64

Useful for analysis when there are a lot of moves with the same score.
Even analyzing in one line (MultiPV = 1) the engine will devote more time to analyzing moves not from the first line.
In this mode, the search depth is much lower than in normal mode.
Not recommended for playing against engines.


"ICCF Analyzes" (from SugaR and McBrain)
Variety of option "Wide Search"

Allows you to change the level of multiPV. In my opinion, the optimal value is 3-4


"Clean Search"

When the engine is stopped after analysis, using this option allows you to clear the search history / hash and start the analysis from scratch.
May not work in some GUI.

=======================
"Razoring" - unchek to disable Razoring
"Futility" - unchek to disable Futility
"Pruning" - unchek to disable Pruning
"NullMove" - unchek to disable NullMove
"ProbCut" - unchek to disable ProbCut
"LMR" - unchek to disable LMR

It can help in difficult positions in which the engine does not find the right move.
Mainly for solving chess problems.

===========================

"KingSafe"
Increases the hazard rating for the King.
Helps to find tactical solutions.


"Tactical"
Enabling this option sets the parameter KingSafe = 5

"TacticalNew"
Experimental option. Still in testing.
Gives a bonus to the assessment, depending on the number of pieces that can attack (or are already attacking) the opponent's King.

"LazyThreshold"
Unchek to disable Lazy Evaluation (same as in CorChess).
I believe this helps in the analysis.

Текстовый документ:
http://s000.tinyupload.com/index.php...50366697358078
[свернуть]

[свернуть]

Последний раз редактировалось ChessMan; 02.07.2021 в 22:34.
ChessMan вне форума   Ответить с цитированием
34 пользователя(ей) сказали cпасибо:
ALEKS (31.08.2017), alex1957 (02.12.2020), Alexandr_L (07.09.2017), Alex_Lk (25.12.2019), Alex_Zet (28.06.2019), Alvir (20.09.2020), Arikchess (12.09.2020), badabum (24.02.2021), Burcontovk (17.09.2017), byan_mivv (01.09.2020), Classic_Chessplayer (04.07.2019), Evgeny (06.08.2020), gens (06.08.2020), Ghppn (18.06.2019), Jeweller (31.12.2019), nvv20 (21.08.2021), ogr56 (10.11.2019), Parkaev_Andrey (31.08.2017), Psyclone2513 (01.09.2017), Scorpio (22.07.2021), SergeyMZ (26.09.2019), Shadow (20.07.2021), ssserg (30.07.2020), Viktor (31.08.2017), АЛЕКСЕЙ1976 (08.09.2020), Алексей_1976 (05.03.2018), БУМЕРАНГ (01.09.2017), Валекс (17.01.2019), Виталий В. (08.08.2019), Владимир001 (09.09.2020), Гудвин (18.06.2018), Переяслав (11.09.2020), Философ (09.06.2018), Харлампий (29.01.2018)
Старый 05.01.2018, 18:23   #271
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Maratka
В общем, исходя из этой таблички я прикинул, что 300-500 партий хватит для того, что CFish показал, что у него и лучше алгоритмы, и больше скорость, для чего ему достаточно выиграть с перевесом в более ~25 Elo.
При меньше перевесе очевидно что преимущество как минимум сомнительно, а если (вдруг) SF выиграет, то никакого особого преимущества и вовсе нет, как бы не наоборот...
Это достаточное преимущество?

http://forchess.ru/showpost.php?p=57512&postcount=272


Score of CFish_x64_281217_NUMA_popcnt_720mingw vs stockfish_281217_x64_popcnt:
1883 - 1292 - 6825 [0.530]
ELO difference: 20.56 +/- 3.82

10000 of 10000 games finished.
ChessMan вне форума   Ответить с цитированием
Старый 05.01.2018, 19:16   #272
Философ
3 разряд
 
Аватар для Философ
 
Регистрация: 02.06.2016
Сообщений: 233
Сказал(а) спасибо: 2,950
Поблагодарили 189 раз(а) в 125 сообщениях
Репутация: 21
По умолчанию Re: Компиляции движков от ChessMan

Что отличает AVX и AVX2?
Философ вне форума   Ответить с цитированием
Старый 05.01.2018, 19:21   #273
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Философ
Что отличает AVX и AVX2?
Это процессорные инструкции. Отличаются, грубо говоря, так же как и SSE4 от SSE3

https://ru.wikipedia.org/wiki/AVX
ChessMan вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Философ (05.01.2018)
Старый 05.01.2018, 21:11   #274
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Философ
Что отличает AVX и AVX2?
Применительно к SF разницы никакой. Все что можно высосать из AVX2, находится в BMI2-сборке. Первый AVX и вовсе бесполезный: набор POPCNT является частью SSE4.x, и к AVX не имеет отношения.
Maratka вне форума   Ответить с цитированием
Старый 05.01.2018, 21:44   #275
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Maratka
Применительно к SF разницы никакой. Все что можно высосать из AVX2, находится в BMI2-сборке. Первый AVX и вовсе бесполезный: набор POPCNT является частью SSE4.x, и к AVX не имеет отношения.
Мои AVX сборки это и есть popcnt сборки, только с дополнительными флагами - дают небольшой прирост скорости на моём ПК.

popcnt прекрасно работает на ПК, которые не поддерживают SSE4.
ChessMan вне форума   Ответить с цитированием
Старый 05.01.2018, 22:30   #276
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от ChessMan
Мои AVX сборки это и есть popcnt сборки, только с дополнительными флагами - дают небольшой прирост скорости на моём ПК.
Не может он ничего давать, ибо если бы давал, его бы уже давным давно собирали на Abrok'е

Цитата: Сообщение от ChessMan
popcnt прекрасно работает на ПК, которые не поддерживают SSE4.
Но по всей видимости поддерживают SSE4A, что вполне попадает под семейство SSE4.x
Maratka вне форума   Ответить с цитированием
Старый 05.01.2018, 22:59   #277
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Maratka
Не может он ничего давать, ибо если бы давал, его бы уже давным давно собирали на Abrok'е


Но по всей видимости поддерживают SSE4A, что вполне попадает под семейство SSE4.x
Ещё раз: popcnt прекрасно работает на ПК с SSE3
AVX даёт небольшой прирост скорости на моем ПК.

=====
Ваше "Не может он ничего давать" - из разряда "Земля плоская, уж я то знаю!"
ChessMan вне форума   Ответить с цитированием
Старый 05.01.2018, 23:06   #278
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от ChessMan
Ещё раз: popcnt прекрасно работает на ПК с SSE3
Это невозможно по двум причинам: первое - потому что документировано POPCNT реализован начиная с SSE4A у AMD и SSE4.2 у Intel, второе - потому что проверено на Core2Duo T5600: движки c POPCNT падают на нем при инициализации (ровно также упадет у Вас сборка AVX2/BMI2, что легло проверяется под отладчиком), а этот процессор явно не поддерживает никакого SSE выше третьего, т.к. в 2006 году ничего новее не существовало:

Maratka вне форума   Ответить с цитированием
Старый 05.01.2018, 23:13   #279
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Maratka
Это невозможно по двум причинам: первое - потому что документировано POPCNT реализован начиная с SSE4A у AMD и SSE4.2 у Intel, второе - потому что проверено на Core2Duo T5600: движки c POPCNT падают на нем при инициализации (ровно также упадет у Вас сборка AVX2/BMI2, что легло проверяется под отладчиком), а этот процессор явно не поддерживает никакого SSE выше третьего, т.к. в 2006 году ничего новее не существовало:

Винда какая там стоит? Небось х32?
ChessMan вне форума   Ответить с цитированием
Старый 05.01.2018, 23:15   #280
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

Небось x64:
64-битные приложения на x86 системе не падают с ошибкой, а попросту не запускаются.

_____
Да и какая разница? CPU-Z выдает список поддерживаемых расширений команд вне зависимости от разрядности ОС, ибо не проверяет их "на запуск", а просто имеет таблицу соответствия "ядро/набор команд".
Maratka вне форума   Ответить с цитированием
Старый 05.01.2018, 23:20   #281
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от ChessMan
AVX даёт небольшой прирост скорости на моем ПК.
А на моем не дает. Странно, видать на FX-8350 AVX другой, чем на FX-8150 :D
Maratka вне форума   Ответить с цитированием
Старый 05.01.2018, 23:29   #282
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Maratka
А на моем не дает. Странно, видать на FX-8350 AVX другой, чем на FX-8150 :D
ChessMan вне форума   Ответить с цитированием
Старый 05.01.2018, 23:30   #283
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Код:
Rank Name                          ELO     +/-   Games   Score   Draws
   1 CFish_x64_master4_050118+RTBHP+AVX_720gcc       5      10    1790     51%     65%
   2 CFish_x64_master4_050118+RTBHP+AVX2_720gcc       3      10    1794     50%     64%
   3 CFish_x64_master4_050118+Remove_ThreatByHangingPawn_720gcc      -3      10    1794     49%     65%
   4 CFish_x64_master4_050118+RTBHP+popcnt_plus_720gcc      -4      10    1790     49%     64%

3591 of 12000 games finished.
3-й движок - обычная popcnt компиляция
ChessMan вне форума   Ответить с цитированием
Старый 05.01.2018, 23:33   #284
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от ChessMan
3-й движок - обычная popcnt компиляция
А второй - AVX2, поддержки которого на AMD FX вообще нет.
Четвертый (AVX) обходит пятый (AVX2), первый (AVX) не проигрывает второму (AVX2), и это все при том, что AVX2 у Вас вообще нет.

_____
И да, как Вы прогнали хотя бы десятки три тысяч партий, чтобы выводить среднее за 117,84 секунды?
Maratka вне форума   Ответить с цитированием
Старый 05.01.2018, 23:33   #285
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Возможно для AVX2 нужны ещё какие-то флаги кроме -mavx и -DUSE_AVX, так как согласно спецификации мой процессор не поддерживает эту инструкцию. Для меня загадка почему она вообще скомпилировалась на моём ПК.
ChessMan вне форума   Ответить с цитированием
Старый 05.01.2018, 23:34   #286
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Maratka
А второй - AVX2, поддержки которого на AMD FX вообще нет.
Ваш проц поддерживает вроде. Или я ошибаюсь? Во всяком случае BMI1 точно поддерживает.
ChessMan вне форума   Ответить с цитированием
Старый 05.01.2018, 23:40   #287
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от ChessMan
Возможно для AVX2 нужны ещё какие-то флаги кроме -mavx и -DUSE_AVX, так как согласно спецификации мой процессор не поддерживает эту инструкцию. Для меня загадка почему она вообще скомпилировалась на моём ПК.
Компилироваться может все что угодно. Запуститься- нет.


Цитата: Сообщение от ChessMan
Ваш проц поддерживает вроде. Или я ошибаюсь? Во всяком случае BMI1 точно поддерживает.
Ошибаетесь, поддерживает только BMI1, но это ДРУГОЙ набор инструкций, ничего не имеющий общего с BMI2, и под него нет кода в исходнике, а потому и компилятору нечего там ловить.
Maratka вне форума   Ответить с цитированием
Старый 05.01.2018, 23:46   #288
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

Короче, разбирайтесь, чего Вы там накомпилировали, а я спать пошел. ;)
Подсказка: для отключения AVX в процессоре (возможно также и AVX2 отключится) есть консольная команда
bcdedit /set xsavedisable 0 (Вкл AVX)
bcdedit /set xsavedisable 1 (Выкл AVX)


Запускать с правами админа, и перезагрузится.
Соответственно, если Вы собрали что-то криво, и оно не требует AVX, хотя Вам кажется, что должно - оно будет работать, причем с той же скоростью, иначе - упадет при инициализации.
Maratka вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
ChessMan (05.01.2018)
Старый 06.01.2018, 00:50   #289
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Maratka
Короче, разбирайтесь, чего Вы там накомпилировали, а я спать пошел. ;)
Подсказка: для отключения AVX в процессоре (возможно также и AVX2 отключится) есть консольная команда
bcdedit /set xsavedisable 0 (Вкл AVX)
bcdedit /set xsavedisable 1 (Выкл AVX)


Запускать с правами админа, и перезагрузится.
Соответственно, если Вы собрали что-то криво, и оно не требует AVX, хотя Вам кажется, что должно - оно будет работать, причем с той же скоростью, иначе - упадет при инициализации.
После этих манипуляций:

Score of CFish_x64_050118_AVX2_720gcc vs CFish_x64_050118_popcnt_720gcc: 35 - 18 - 122 [0.549]
ELO difference: 33.86 +/- 28.17

176 of 2000 games finished.


ChessMan вне форума   Ответить с цитированием
Старый 06.01.2018, 01:19   #290
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от ChessMan
После этих манипуляций:
После этих манипуляций у Вас не может запуститься программа, требующая AVX в обязательном порядке.
Манипулируйте дальше ;)

__________
http://dropmefiles.com/o7q8k
До отключения AVX у Вас должны работать три файла из этого каталога, после отключения - два.
Сравнивайте, что у меня, что у Вас, и добивайтесь у себя того же, что есть у меня.


Цитата: Сообщение от ChessMan
Возможно для AVX2 нужны ещё какие-то флаги кроме -mavx и -DUSE_AVX
Возможно. Например мне кажется, что так и просится "-DUSE_AVX2", но настаивать не буду, у меня другой компилятор, и флаги не обязаны совпадать.
Maratka вне форума   Ответить с цитированием
Старый 06.01.2018, 01:29   #291
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Maratka
После этих манипуляций у Вас не может запуститься программа, требующая AVX в обязательном порядке.
Манипулируйте дальше ;)

__________
http://dropmefiles.com/o7q8k
До отключения AVX у Вас должны работать три файла из этого каталога, после отключения - два.
Сравнивайте, что у меня, что у Вас, и добивайтесь у себя того же, что есть у меня.



Возможно. Например мне кажется, что так и просится "-DUSE_AVX2", но настаивать не буду, у меня другой компилятор, и флаги не обязаны совпадать.


-DUSE_AVX*** не играет большой роли... можно указать -DUSE_AVX512 и движок будет работать (даже на Phenom II), а вот с -mavx1-2 уже не будет
ChessMan вне форума   Ответить с цитированием
Старый 06.01.2018, 01:33   #292
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Ваша AVX2 компиляция не запустилась, а вот AVX работает
ChessMan вне форума   Ответить с цитированием
Старый 06.01.2018, 01:50   #293
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

AVX2 в прицнипе невозможно запустить на AMD FX, а AVX работает при настроке системы по умолчанию. Командами, которые я привел выше поддержку AVX можно отключить (возможно на поддерживаемых процессорах эта команда отключит также и AVX2).
Maratka вне форума   Ответить с цитированием
Старый 06.01.2018, 12:45   #294
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Maratka
AVX2 в прицнипе невозможно запустить на AMD FX, а AVX работает при настроке системы по умолчанию. Командами, которые я привел выше поддержку AVX можно отключить (возможно на поддерживаемых процессорах эта команда отключит также и AVX2).
Обе команды отключают AVX? Потому что я вроде бы включил (bcdedit /set xsavedisable 0 (Вкл AVX))



Вашей AVX компиляции явно чего-то не хватает, как минимум popcnt флагов.
ChessMan вне форума   Ответить с цитированием
Старый 06.01.2018, 14:28   #295
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от ChessMan
Вашей AVX компиляции явно чего-то не хватает, как минимум popcnt флагов.
Совершенно верно. Ибо AVX- это AVX. Команда POPCNT в AVX не входит, а сам по себе AVX в SF ничего ускорить не может: нет в исходнике той математики, которую можно оптимизировать AVX-командами.


Цитата: Сообщение от ChessMan
Обе команды отключают AVX? Потому что я вроде бы включил
Очевидно одна выключает, вторая -включает. Если у Вас включено, то должны работать три движка: все, кроме AVX2. Если выключите, то отвалится и AVX, соответственно останется два движка.
Maratka вне форума   Ответить с цитированием
Старый 06.01.2018, 14:35   #296
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Maratka
Совершенно верно. Ибо AVX- это AVX. Команда POPCNT в AVX не входит, а сам по себе AVX в SF ничего ускорить не может: нет в исходнике той математики, которую можно оптимизировать AVX-командами.



Очевидно одна выключает, вторая -включает. Если у Вас включено, то должны работать три движка: все, кроме AVX2. Если выключите, то отвалится и AVX, соответственно останется два движка.
"Команда POPCNT в AVX не входит" - AVX это замена SSE, так что можно использовать с popcnt (или даже с BMI2?)
ChessMan вне форума   Ответить с цитированием
Старый 06.01.2018, 14:39   #297
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Улучшения[править | править код]
Новая схема кодирования инструкций VEX
Ширина векторных регистров SIMD увеличивается со 128 (XMM) до 256 бит (регистры YMM0 — YMM15). Существующие 128-битные SSE-инструкции будут использовать младшую половину новых YMM регистров, не изменяя старшую часть. Для работы с YMM-регистрами добавлены новые 256-битные AVX-инструкции. В будущем возможно расширение векторных регистров SIMD до 512 или 1024 бит. Например, процессоры с архитектурой Xeon Phi уже в 2012 году имели векторные регистры (ZMM) шириной в 512 бит[2], и используют для работы с ними SIMD-команды с MVEX- и VEX-префиксами, но при этом они не поддерживают AVX. [источник не указан 741 день]
Неразрушающие операции. Набор AVX-инструкций использует трёхоперандный синтаксис. Например, вместо {\displaystyle a=a+b} a=a+b можно использовать {\displaystyle c=a+b} c=a+b, при этом регистр {\displaystyle a} a остаётся неизменённым. В случаях, когда значение {\displaystyle a} a используется дальше в вычислениях, это повышает производительность, так как избавляет от необходимости сохранять перед вычислением и восстанавливать после вычисления регистр, содержавший {\displaystyle a} a, из другого регистра или памяти.
Для большинства новых инструкций отсутствуют требования к выравниванию операндов в памяти. Однако рекомендуется следить за выравниванием на размер операнда, во избежание значительного снижения производительности.[3]
Набор инструкций AVX содержит в себе аналоги 128-битных SSE инструкций для вещественных чисел. При этом, в отличие от оригиналов, сохранение 128-битного результата будет обнулять старшую половину YMM регистра. 128-битные AVX-инструкции сохраняют прочие преимущества AVX, такие, как новая схема кодирования, трехоперандный синтаксис и невыровненный доступ к памяти.
Intel рекомендует отказаться от старых SSE инструкций в пользу новых 128-битных AVX-инструкций, даже если достаточно двух операндов.[4].

https://ru.wikipedia.org/wiki/AVX
ChessMan вне форума   Ответить с цитированием
Старый 06.01.2018, 14:52   #298
Maratka
Эксперт
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,952 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Компиляции движков от ChessMan

Можно. Только еще раз пишу - быстрее оно не станет, более того - может даже стать чуть медленнее (неизбежное следствие, когда используется и AVX, и SSE, и процессор вынужден сохранят свои регистры при переключении с одного набора на другой, что влечет затрату времени).
Для проверки же реального включения команд в программу этого кода в любом случае достаточно: если не включено - не падает на процессоре без поддержки.
Maratka вне форума   Ответить с цитированием
Старый 06.01.2018, 14:55   #299
ChessMan
Super Moderator
ТС
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от Maratka
Можно. Только еще раз пишу - быстрее оно не станет, более того - может даже стать чуть медленнее (неизбежное следствие, когда используется и AVX, и SSE, и процессор вынужден сохранят свои регистры при переключении с одного набора на другой, что влечет затрату времени).
Для проверки же реального включения команд в программу этого кода в любом случае достаточно: если не включено - не падает на процессоре без поддержки.
SSE можно убрать, добавив только AVX флаги

Код:
### 3.5 prefetch
ifeq ($(prefetch),yes)
	ifeq ($(sse),yes)
		CXXFLAGS += -msse
		DEPENDFLAGS += -msse
	endif
else
	CXXFLAGS += -DNO_PREFETCH
endif

### 3.6 popcnt
ifeq ($(popcnt),yes)
	ifeq ($(comp),icc)
		CXXFLAGS += -msse3 -DUSE_POPCNT
	else
		CXXFLAGS += -msse3 -mpopcnt -DUSE_POPCNT
	endif
endif
Как бы там ни было, если у меня они дают прирост скорости и ЭЛО то почему бы их не использовать?
ChessMan вне форума   Ответить с цитированием
Старый 06.01.2018, 15:14   #300
svoitsl
Гроссмейстер
 
Аватар для svoitsl
 
Регистрация: 19.04.2017
Сообщений: 4,734
Сказал(а) спасибо: 1,204
Поблагодарили 2,853 раз(а) в 1,885 сообщениях
Репутация: 159
По умолчанию Re: Компиляции движков от ChessMan

Цитата: Сообщение от ChessMan
Ширина векторных регистров SIMD увеличивается со 128 (XMM) до 256 бит
Любопытно, что как выяснилось для шахмат перспективнее не размер регистров, а скорость их обработки, длинна вполне достаточна и 8 бит
svoitsl вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 00:59. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
Рейтинг@Mail.ru