2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Core X-series LGA-2066 (платформа Basin Falls)
Сообщение07.10.2017, 07:46 

Использующим в своей работе матричные операции типа перемножения матриц можно порекомендовать переход на процессоры Core i9: они поддерживают AVX512 (а точнее FMA (Fused Multiply-Add, умножение-сложение с однократным округлением - набор 512-битных SIMD-инструкций для архитектур x86 и x86-64, предназначенный для выполнения операции умножения-сложения над числами в формате с плавающей запятой) и позволяют, например, перемножать матрицы в 8 раз быстрее, чем SSE и в два раза быстрее, чем AVX2. Но перемножение матриц - это основа всех современных алгоритмов с операциями уровня BLAS Level 3 (например, решение систем линейных уравнений, диагонализация матриц, сингулярный анализ). Кстати, однократное округление повышает точность расчетов. Правда, есть проблемы с поддержкой AVX512 операционными системами моложе Windows 10.

 
 
 
 Re: Приемы программирования SSE/AVX [Обмен опытом]
Сообщение07.10.2017, 13:33 
FMA поддерживается и в AVX2 (256 битные операции).

 
 
 
 Приемы программирования SSE/AVX [Обмен опытом]
Сообщение07.10.2017, 18:16 
Dmitriy40 в сообщении #1253895 писал(а):
FMA поддерживается и в AVX2 (256 битные операции).

Это следует из сравнения скоростей на разных архитектурах, которое я привел. Хотелось бы предостеречь от Core i7, "поддерживающих" AVX512: их прирост скорости не более 30% в отличии от Core i9, скорость которых удваивается.
Более подробную информацию по данному вопросу можно получить, например, здесь (Обзор процессора Core i9-7900X: предвестник ядерной войны):
https://3dnews.ru/954174
и здесь (AVX512: быстродействие Core i7 и Core i9 поколения Skylake-X сильно различается):
https://www.overclockers.ru/hardnews/85 ... etsya.html

Я тестировал свой 10-ти ядерный Core i9-7900X на предмет скорости перемножения матриц с помощью пакета parallel_studio_xe_2018_cluster_edition, включающего Intel® Math Kernel Library.

 
 
 
 Re: Приемы программирования SSE/AVX [Обмен опытом]
Сообщение08.10.2017, 15:21 
В семейство Core X-series LGA 2066 (платформа Basin Falls, сектор рынка High End DeskTop) на сегодняшний день (осень 2017) входят модели на архитектуре Kaby Lake-X (i5-7640X и Core i7-7740X, не поддерживают AVX512) и Skylake-X (Core i7-7800X, Core i7-7820X, Core i9… c поддержкой AVX-512)

Хорошо бы давать ссылки о различиях между Skylake-X i7 и i9 на чуть более детальные обзоры. Сходу нагуглил такие ссылки
Вместе с дополнительными регистрами и увеличением их размерности в Skylake-X появилось выделенное AVX-512 исполнительное устройство, способное выполнять FMA-операции (умножения-сложения). Оно совместимо исключительно с AVX-512-инструкциями и относится к пятому исполнительному порту в традиционной структуре Skylake. Данное устройство добавилось к паре имевшихся 256-битных FMA-устройств, которые уже были в обычных процессорах Skylake, и которые тоже могут, объединяясь совместно, обрабатывать AVX-512-инструкции. В результате, Skylake-X оказывается способен выполнять AVX-512-инструкции с тем же темпом, что и обычные AVX-команды. А это в свою очередь означает удвоение пиковой производительности по сравнению с обычными массовыми Skylake за счёт увеличения размерности данных.

Выполнять по две AVX-512-команды одновременно может далеко не каждый процессор, относящийся к семейству Skylake-X. Дополнительное FMA AVX-512 устройство предусмотрено лишь в тех процессорах, которые относятся к семейству Core i9. Модели же Core i7-7800X и Core i7-7820X имеют набор 512-битных регистров, но работать с ними могут только при помощи одного из двух 512-битных устройств, раелизованных в Skylake-X.
Nominally the FMAs on ports 0 and 1 are 256-bit, so in order to drive towards the AVX-512-F these two ports are fused together, similar to how AVX-512-F is implemented in Knights Landing. The six-core and eight-core Skylake-X parts support one fused FMA for AVX-512-F, although the 10-core will support dual 512-bit AVX-512-F ports, which seems to be located on port 5. This means that the 10-core i9-7900X can support 64 SP or 32 DP calculations per cycle, whereas the 8-core/6-core parts can support 32 SP or 16 DP per cycle.
Jeff Kampman (19.06.17) в Intel's Core i9-7900X CPU reviewed, part one писал(а):
The Core i7-7800X and Core i7-7820X will still have the wider registers for AVX-512, but they'll only execute instructions using the pair of 256-bit AVX units common to all Skylake chips.

 
 
 
 Re: Core X-series LGA-2066 (платформа Basin Falls)
Сообщение18.11.2017, 19:05 
Полезная информация о снижении тактовых частот Intel при выполнении инструкций AVX-512:
https://itnan.ru/post.php?c=1&p=342320

 
 
 
 Re: Core X-series LGA-2066 (платформа Basin Falls)
Сообщение20.11.2017, 11:39 
as73251 в сообщении #1266452 писал(а):
Полезная информация о снижении тактовых частот Intel при выполнении инструкций AVX-512:
https://itnan.ru/post.php?c=1&p=342320

На моем 10-ти ядерном Core i9 масштабируемость не изменяется: во всех расчетах получил практически двукратное ускорение по сравнению с AVX2. AVX512 очень полезен тем, что есть предикаты, многие вещи делаются значительно проще.

 
 
 [ Сообщений: 6 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group