> > > > AMD против Intel: оптимизации и тесты

AMD против Intel: оптимизации и тесты

Опубликовано:

amd-romeНа своем пленарном докладе во время Computex AMD впервые показала двухсокетную систему, состоящую из двух процессоров EPYC второго поколения, 64 ядра каждый. Она сравнивалась с двумя Intel Xeon Platinum 8280 по 28 ядра каждый. Сравнение 128 ядер с 56 смотрится не совсем честным, но его можно оправдать тем, что AMD желала провести сравнительные тесты современных двухсокетных систем друг с другом.

AMD не использовала процессоры Xeon Platinum линейки 9000, поскольку они пока недоступны на рынке. Впрочем, процессоры EPYC второго поколения тоже еще не вышли, так что данный аргумент AMD мы бы не назвали весомым.

Весьма интересно обсудить выбранный AMD тест, причем не только в контексте сравнения систем AMD и Intel, но также в разрезе истории бенчмарков. AMD использовала NAMD (Nanoscale Molecular Dynamics Program), программное обеспечение для симуляции динамических процессов молекулы. Оно является типичным примером сферы HPC (высокопроизводительных вычислений), и хорошо масштабируется на десятки тысяч процессоров благодаря модели программирования Charm++. Поэтому в приведенном AMD примере мы видим хорошее масштабирование.

Нет новых улучшений со стороны AMD

На CES AMD показала систему 1S с процессором EPYC, содержащим 64 ядра. Производительность составила 9,8 нс/день. Сегодня, почти пять месяцев спустя, удвоение ядер привело к производительности 19,56 нс/день, AMD не получила серьезного падения масштабирования производительности при переходе на два процессора в одной системе. Впрочем, в подобных задачах пропускная способность памяти и задержки существенной роли не играют, поэтому результат вполне ожидаем.

С другой стороны, и улучшений по масштабированию мы не получили. AMD не смогла внести какие-либо оптимизации с программной стороны, да и по тактовым частотам процессоров EPYC значимых изменений нет. Чем ближе дата выхода новых CPU, тем больше вероятность появления подобных оптимизаций, результаты которых будут видны на демо.

NAMD

Nanoscale Molecular Dynamics

нс/день
Больше - лучше

На диаграмме показано хорошее масштабирование, но какого-либо прогресса или оптимизации между январем (1S, 64C) и концом мая (2S, 128C) мы не получили.

AMD запускала процессоры Xeon в неоптимизированных условиях

AMD тщательно следила за тем, чтобы процессоры EPYC работали в наиболее идеальных условиях, и для конкурента должен использоваться подобный подход - по крайней мере, если предполагается публичное оглашение итогов теста. Но, по всей видимости, все оказалось иначе.

Как оказалось, два процессора Xeon Platinum 8280 работали не с оптимальной версией NAMD, оптимизированной под них. Использовалась программа в стандартной многоядерной версии, но есть также версия, оптимизированная под CUDA или с поддержкой AVX512 в виде "Intel Xeon Phi KNL". Она указывает на ускорители Xeon Phi, жизненный цикл которых уже завершен, но здесь важна поддержка инструкций AVX512, от которых выигрывают процессоры Xeon на архитектуре Cascade Lake.

Два процессора Xeon Platinum 8280 скидывают базовую частоту с 2,7 до 1,8 ГГц, частота All Core Turbo снижается с 3,3 до 2,4 ГГц, но при этом блоки обработки команд AVX512 справляются с работой намного более эффективно.

Соответственно, Intel получила другие результаты для теста на двух процессорах Xeon Platinum 8280, чем в бенчмарке AMD. Вместо результата 9,68 нс/день мы получили 12,65 нс/день - прирост на 30,6%.

Intel на этом не остановилась, и привела результаты двух Intel Xeon 9242 Platinum, каждый с 48 ядрами. С результатом 19,88 нс/день процессоры Intel вернули паритет с AMD. Также были показаны результаты двух Xeon Platinum 9282 с 56 ядрами каждый. Они обеспечивают 24,16 нс/день, что значительно больше двух процессоров EPYC.

NAMD

Nanoscale Molecular Dynamics

нс/день
Больше - лучше

К результатам, представленным производителем, следует относиться с долей скепсиса

Результаты тестов, показанные AMD и Intel, вновь поднимают вопрос: стоит ли верить подобным сравнениям? Конечно, производитель выбирает приложения и тесты, которые показывают процессоры и платформу с лучшей стороны.

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

Вопрос и в том, имеют ли подобные тесты практическую значимость. NAMD соответствует лишь очень специфичному сегменту всех вычислений HPC. То же самое, кстати, касается и демонстраций теста Cinebench для настольных ПК. Он позволяет определить производительность отдельных или всех ядер, но если требуется оценить повседневную производительность, то результаты данного теста уже не так интересны.

В серверной области следует внимательно подходить к оценке производительности новых платформ. У каждого приложения свои требования, и какого-либо универсального бенчмарка здесь нет. Серверным или облачным провайдерам подобные тесты малоинтересны. Они оценивают работу своих систем на тех или иных платформах. И без проведения соответствующих тестов решения о переходе на новую платформу не принимаются. При этом еще следует учитывать затраты на покупку и эксплуатацию систем.

В данном случае AMD стоило быть честнее и внимательнее. Использование версии без оптимизации AVX512 вернулось компании бумерангом.