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

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

Ответ
 
Опции темы Опции просмотра
Старый 20.06.2020, 18:20   #121
dew
Гроссмейстер
 
Аватар для dew
 
Регистрация: 21.02.2019
Сообщений: 1,206
Сказал(а) спасибо: 131
Поблагодарили 514 раз(а) в 368 сообщениях
Репутация: 62
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Ну и вляние векторизации, я тоже советовал посмотреть не на всем проекте, а на зоне влияния патча..
__________________
*Origin: Мы делили апельсин - много наших полегло.. And I don't care just what people say..
dew вне форума   Ответить с цитированием
Старый 20.06.2020, 19:23   #122
ChessMan
Super Moderator
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Я не знаю как его так скомпилировать
ChessMan вне форума   Ответить с цитированием
Старый 20.06.2020, 19:32   #123
dew
Гроссмейстер
 
Аватар для dew
 
Регистрация: 21.02.2019
Сообщений: 1,206
Сказал(а) спасибо: 131
Поблагодарили 514 раз(а) в 368 сообщениях
Репутация: 62
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от ChessMan
Я не знаю как его так скомпилировать
А можешь показать монолитный diff для патча? Я его просмотрю, и попозже(как освобожусь) поробую изобразить рабочий скрипт компиляции..
__________________
*Origin: Мы делили апельсин - много наших полегло.. And I don't care just what people say..
dew вне форума   Ответить с цитированием
Старый 20.06.2020, 19:42   #124
dew
Гроссмейстер
 
Аватар для dew
 
Регистрация: 21.02.2019
Сообщений: 1,206
Сказал(а) спасибо: 131
Поблагодарили 514 раз(а) в 368 сообщениях
Репутация: 62
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

P.S. Если у самого будет время - на самом деле все просто можно скрипт составить:
Смотришь какие команды make выполняет для g++ и просто их копипастишь в скрипт, там где надо поправляя флаги..
__________________
*Origin: Мы делили апельсин - много наших полегло.. And I don't care just what people say..
dew вне форума   Ответить с цитированием
Старый 29.06.2020, 10:02   #125
ChessMan
Super Moderator
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от dew
А можешь показать монолитный diff для патча? Я его просмотрю, и попозже(как освобожусь) поробую изобразить рабочий скрипт компиляции..
Вот дифф
https://github.com/official-stockfis...:avx2-bitboard

Думаю что проблема все-таки в том что это non magic bitboards.

Можно компилировать даже без -mavx2 но с -march=native.
ChessMan вне форума   Ответить с цитированием
Старый 30.06.2020, 00:57   #126
dew
Гроссмейстер
 
Аватар для dew
 
Регистрация: 21.02.2019
Сообщений: 1,206
Сказал(а) спасибо: 131
Поблагодарили 514 раз(а) в 368 сообщениях
Репутация: 62
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от ChessMan
Вот дифф
https://github.com/official-stockfis...:avx2-bitboard

Думаю что проблема все-таки в том что это non magic bitboards.

Можно компилировать даже без -mavx2 но с -march=native.
Ну а так ты понял, как компилить каждый cpp-файл с разными ключаии, а потом это все слинковать? Или вопрос еще актуальный?

Касательно -march=native - я хз почему, но он на фоне других агрессивных ключей оптимизации на моей практике не дает ни какого профита.. Касательно avx.. У меня только процессоры Intel, и те что у меня есть - происходит деградация на уровне падения частоты(другими словами никого турбо буста)..
__________________
*Origin: Мы делили апельсин - много наших полегло.. And I don't care just what people say..
dew вне форума   Ответить с цитированием
Старый 30.06.2020, 01:16   #127
dew
Гроссмейстер
 
Аватар для dew
 
Регистрация: 21.02.2019
Сообщений: 1,206
Сказал(а) спасибо: 131
Поблагодарили 514 раз(а) в 368 сообщениях
Репутация: 62
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Ну а глянув бегло на diff, получается что pext конструкции подменяются..
__________________
*Origin: Мы делили апельсин - много наших полегло.. And I don't care just what people say..
dew вне форума   Ответить с цитированием
Старый 30.06.2020, 07:02   #128
ChessMan
Super Moderator
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от dew
Ну а так ты понял, как компилить каждый cpp-файл с разными ключаии, а потом это все слинковать? Или вопрос еще актуальный?
Нет, не понял. Но уверен это не ускорит движок.
ChessMan вне форума   Ответить с цитированием
Старый 08.07.2020, 15:54   #129
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Хотелось бы замерить скорость POPCNT с профилированием vs BMI2 без профилирования: которая быстрее?

Кто-то сможет?
Потребуются актуальные процессоры Core за последние пять лет, не ниже i5.
Maratka вне форума   Ответить с цитированием
Старый 08.07.2020, 17:36   #130
Владимир001
Эксперт
 
Аватар для Владимир001
 
Регистрация: 19.12.2019
Сообщений: 7,484
Сказал(а) спасибо: 4,655
Поблагодарили 12,178 раз(а) в 5,475 сообщениях
Репутация: 259
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от Maratka
Хотелось бы замерить скорость POPCNT с профилированием vs BMI2 без профилирования: которая быстрее?

Кто-то сможет?
Потребуются актуальные процессоры Core за последние пять лет, не ниже i5.
-------------------
Изображения
Тип файла: jpg Скриншот 08-07-2020 173338.jpg (347.6 Кб, 11 просмотров)
Тип файла: jpg Скриншот 08-07-2020 173437.jpg (364.5 Кб, 7 просмотров)
Владимир001 вне форума   Ответить с цитированием
Старый 08.07.2020, 17:47   #131
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Забавно, думал будет в районе единиц процентов, а вышло ~10.
Для большего понимания: какой именно процессор у Вас?

Спасибо!
Maratka вне форума   Ответить с цитированием
Старый 08.07.2020, 17:58   #132
Владимир001
Эксперт
 
Аватар для Владимир001
 
Регистрация: 19.12.2019
Сообщений: 7,484
Сказал(а) спасибо: 4,655
Поблагодарили 12,178 раз(а) в 5,475 сообщениях
Репутация: 259
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от Maratka
Для большего понимания: какой именно процессор у Вас?
Владимир001 вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Maratka (08.07.2020)
Старый 08.07.2020, 18:01   #133
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Дам еще одну версию, POPCNT без профилирования, проверьте и ее тоже пожалуйста!

https://yadi.sk/d/a7us4ud6T0sodw
Maratka вне форума   Ответить с цитированием
Старый 08.07.2020, 18:04   #134
Владимир001
Эксперт
 
Аватар для Владимир001
 
Регистрация: 19.12.2019
Сообщений: 7,484
Сказал(а) спасибо: 4,655
Поблагодарили 12,178 раз(а) в 5,475 сообщениях
Репутация: 259
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от Maratka
Дам еще одну версию, POPCNT без профилирования, проверьте и ее тоже пожалуйста!

https://yadi.sk/d/a7us4ud6T0sodw

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

[свернуть]


Intel Core i5-7600K, 4.20 GHz
Владимир001 вне форума   Ответить с цитированием
Старый 08.07.2020, 18:56   #135
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Итого, профилирование дает 4,5%
Это нормально.

Не очень понятно, почему на Skylake есть просадка BMI2 перед POPCNT (оба без профилирования) на те же 4-5%?

Кто-то может попробовать собрать сборки на других компиляторах (у меня MSVC 2017)?
Maratka вне форума   Ответить с цитированием
Старый 08.07.2020, 19:15   #136
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Нашел одну опцию у меня, которая (возможно) виновата:
/favor:AMD64
Т.е. оптимизация под процессоры AMD, не Intel

https://docs.microsoft.com/ru-ru/cpp...s?view=vs-2017

Убрал ее, просьба сравнить:
https://yadi.sk/d/KrTaCMMSr_0rBQ
Maratka вне форума   Ответить с цитированием
Старый 08.07.2020, 21:26   #137
Владимир001
Эксперт
 
Аватар для Владимир001
 
Регистрация: 19.12.2019
Сообщений: 7,484
Сказал(а) спасибо: 4,655
Поблагодарили 12,178 раз(а) в 5,475 сообщениях
Репутация: 259
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от Maratka
Нашел одну опцию у меня, которая (возможно) виновата:
/favor:AMD64
Т.е. оптимизация под процессоры AMD, не Intel

https://docs.microsoft.com/ru-ru/cpp...s?view=vs-2017

Убрал ее, просьба сравнить:
https://yadi.sk/d/KrTaCMMSr_0rBQ

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

[свернуть]


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

[свернуть]


Intel Core i5-7600K, 4.20 GHz
Владимир001 вне форума   Ответить с цитированием
Старый 08.07.2020, 21:41   #138
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Совсем непонятно.
Спасибо за тесты!
Maratka вне форума   Ответить с цитированием
Старый 07.08.2020, 21:38   #139
ChessMan
Super Moderator
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

@Maratka

https://www.mirrored.to/files/JXJI2YHB/
ChessMan вне форума   Ответить с цитированием
Старый 07.08.2020, 21:40   #140
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

И мой 11-й, POPCNT без профилирования

https://yadi.sk/d/A9vGB9XZ8tamQw
Maratka вне форума   Ответить с цитированием
Старый 07.08.2020, 21:41   #141
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от ChessMan
Другой обменник, этот не открывается?
Maratka вне форума   Ответить с цитированием
Старый 07.08.2020, 21:46   #142
ChessMan
Super Moderator
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от Maratka
Другой обменник, этот не открывается?
Нормально, скачал
ChessMan вне форума   Ответить с цитированием
Старый 07.08.2020, 21:50   #143
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

А я - не могу, два браузера использовал.

Ну да шут с ним, давайте Ваши результаты на одном, 4 и 12 потоках?

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

Ваша сборка

Моя сборка


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

Цитата: Сообщение от Maratka
А я - не могу, два браузера использовал
https://www96.zippyshare.com/v/IHiaPYwM/file.html
ChessMan вне форума   Ответить с цитированием
Старый 07.08.2020, 21:54   #146
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Итого, 6% в консоли, и 5% в оболочке.
Вроде бы сходится +/-

А теперь на 4 и 12 потоков пожалуйста!
Maratka вне форума   Ответить с цитированием
Старый 07.08.2020, 21:56   #147
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от ChessMan
https://www96.zippyshare.com/v/IHiaPYwM/file.html
__________________
Х. его З, может наши знаменитые "санкции"?
На яндекс можете выложить?

Даже если нет регистрации - все одно рано ли, поздно ли - но пригодится!
Maratka вне форума   Ответить с цитированием
Старый 07.08.2020, 21:57   #148
ChessMan
Super Moderator
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Maratka,
Не желаете попробовать в MinGW компилировать?
Могу научить. Думаю, это гораздо проще чем Visual Studio...

Если что, скачивайте:

https://www.mirrored.to/files/1Q3UPEMK/

https://www51.zippyshare.com/v/rjxctLlB/file.html

https://anonfiles.com/z1A4d6L0o4/MinGW_compiler_7z

https://www.solidfiles.com/v/X8Xg2VXNvqNDX
ChessMan вне форума   Ответить с цитированием
Старый 07.08.2020, 22:02   #149
ChessMan
Super Moderator
 
Аватар для ChessMan
 
Регистрация: 04.01.2017
Сообщений: 3,629
Сказал(а) спасибо: 2,879
Поблагодарили 6,463 раз(а) в 2,331 сообщениях
Репутация: 354
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора



ChessMan вне форума   Ответить с цитированием
Пользователь сказал cпасибо:
Maratka (07.08.2020)
Старый 07.08.2020, 22:04   #150
Maratka
Эксперт
ТС
 
Аватар для Maratka
 
Регистрация: 11.04.2017
Адрес: РФ, Крым, Севастополь.
Сообщений: 11,849
Сказал(а) спасибо: 3,311
Поблагодарили 5,951 раз(а) в 4,245 сообщениях
Репутация: 253
По умолчанию Re: Оптимизации SF в зависимости от компилятора, профилирования и ключей компилятора

Цитата: Сообщение от ChessMan
Maratka,
Не желаете попробовать в MinGW компилировать?
Могу научить. Думаю, это гораздо проще чем Visual Studio...
Желаю, но ценность VS не только в компиляторе, но и в привычной оболочке, я не зная С++ от слова "совсем", но работая с Vb.net, открыл исходники SF, и был там как дома...

Но в целом - да, если есть компилятор получше - чего бы и нет...

Тут хотелось бы что еще - тестов от владельцев Core (ибо этот вот мой бинарь - это из-под компилятора Intel), и на FX там, или может быть и Ryzen (вне зависимости от поколения) - он вероятно все же не генерит самый быстрый код.
Maratka вне форума   Ответить с цитированием
Ответ


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

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

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

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


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


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