Из Неаполя в Рим: новые CPU AMD EPYC

Седьмого августа был объявлен мировой старт продаж второго поколения линейки AMD EPYC™. Новые процессоры базируются на микроархитектуре Zen 2 и построены по 7-нм технологическому процессу.

Особенности

Процессор AMD EPYC 7452

«Встречают по одежке, провожают по уму», — гласит народная мудрость. Вот и мы начнем с «одежки» нового поколения. Маркировка процессоров претерпела незначительные изменения: четвертая цифра, обозначающая поколение, сменилась с 1 на 2. Первая цифра, как и ранее, обозначает серию, а вторая и третья — модель. AMD не отказались от процессоров с индексом P, которые не поддерживают работу в многосокетных системах.

Второе поколение унаследовало сокет SP3 от первого поколения без изменений, что позволяет использовать новые процессоры без обновления материнской платы, но это не сможет полностью раскрыть их потенциал. Достижение полной производительности возможно с использованием новых материнских плат, поддерживающих частоты 3200 МГц для памяти DDR4.

«Начинка» процессора преобразилась до неузнаваемости: изменился технологический процесс, была применена новая микроархитектура Zen 2 и появился новый высокоскоростной контроллер оперативной памяти.

Производительность

Переход на 7-нм технологический процесс привел к уплотнению кристалла и увеличению количества ядер до 64, что вдвое выше по сравнению с первым поколением. Базовая частота процессоров второго поколения находится в диапазоне от 2.00 до 2.90 ГГц. Для сравнения, базовая первого поколения не превышала 2.30 ГГц. Увеличение количества ядер и базовой частоты процессора стали причиной повышения тепловыделения до 120 Ватт в бюджетных версиях и до 225 Ватт в топовых.

Улучшение технологического процесса не единственное нововведение. Новая микроархитектура под названием Zen 2 внесла свою «лепту» в улучшение технических характеристик процессора. Улучшения нацелены на взаимодействие с кэшами: вдвое увеличилась скорость обмена данными с L1, увеличена скорость передачи данных между кэшами, увеличен размер L3-кэша.

Подробные технические характеристики линейки представлены в таблице.

Модель TDP, Ватт Кол-во ядер Базовая частота, ГГц Максимальная частота, ГГц Размер L3 кэша, МБ
7742 225 64 2.25 3.40 256
7702 / 7702P 200 64 2.00 3.35 256
7642 225 48 2.30 3.30 256
7552 200 48 2.20 3.30 192
7542 225 32 2.90 3.40 128
7502 / 7502P 180 32 2.50 3.35 128
7452 155 32 2.35 3.35 128
7402 / 7402P 180 24 2.80 3.35 128
7352 155 24 2.30 3.20 128
7302 / 7302P 155 16 3.00 3.30 128
7282 120 16 2.80 3.20 64
7272 120 12 2.90 3.20 64
7262 155 8 3.20 3.40 128
7252 120 8 3.10 3.20 64
7232P 120 8 3.10 3.20 32

Rome может похвастаться улучшением работы с внешними устройствами: впервые появилась возможность работать с контроллером внешних прерываний x2APIC, а также заявлена поддержка DDR4-3200 и 128-ми линий PCIe. В новом поколении процессоров появилась поддержка технологии Virtualized IOMMU, с помощью которой виртуальные машины получают прямой доступ к физическим периферийным устройствам.

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

Безопасность

В обновленной линейке процессоров не последнее место уделили вопросам безопасности. Внутри системы на кристалле установлен процессор под названием AMD Secure Processor на базе ARM® Cortex® A5, который хранит ключи и шифрует содержимое оперативной памяти по алгоритму AES-128.

AMD Secure Processor предлагает два вида шифрования памяти (для работы данных методов требуется поддержка со стороны ОС):

  • SME (Secure Memory Encryption);

    SME шифрует память одним ключом и защищает от физических атак, таких как Cold boot attack. Использование данного типа шифрования не требует изменения пользовательских приложений: ОС отмечает страницы памяти, которые необходимо зашифровать.

  • SEV (Secure Encrypted Virtualization).

    SEV разработан для обеспечения безопасности при работе с виртуальными машинами (ВМ). Память, используемая гипервизором и каждой из ВМ, шифруется собственным ключом. Такой подход криптографически изолирует гипервизор и ВМ друг от друга.

Тестовые серверы

Теперь, когда известна теория о новинке, проведем практические испытания. Представителем второго поколения выступит AMD EPYC™ 7452. Оппонентом из первого поколения выбран AMD EPYC™ 7551. Противник из «синего» лагеря — Intel® Xeon® Gold 5218 в составе двухсокетной системы. Выбор этих систем обоснован схожестью их технических характеристик.

EPYC 7452 EPYC 7551 Xeon 5218
Количество ядер 32 32 16
Количество потоков 64 64 32
Базовая частота, ГГц 2.35 2.00 2.30
Максимальная частота, ГГц 3.70 3.00 3.90
Расчётная мощность, Ватт 155 180 125
Тип оперативной памяти DDR4-3200 DDR4-2666 DDR4-2666
Кэш L1, KБ 2048 3072 1024
Кэш L2, КБ 16384 16384 16384
Кэш L3, МБ 128 64 22

В тестах процессоры ставятся в равные условия: одинаковая память, одинаковые диски и идентичные операционные системы с идентичными настройками.

Для достижения максимальной производительности все каналы контроллера памяти процессора должны быть задействованы. Процессоры Intel® располагают шестью каналами, а процессоры AMD — восьмью. При таком различии сложно создать идентичные условия, поэтому был найден компромисс: в системы с процессорами AMD установлены 8 модулей по 16 ГБ каждая, а в двухсокетную систему с Intel® Xeon® установлены 12 модулей по 8 ГБ. Все модули оперативной памяти работают на частоте 2666 МГц.

Операционная система (ОС) размещается на SSD-дисках, чтобы уменьшить влияние дисковой подсистемы на испытания. Все тесты были проведены на CentOS версии 7.

EPYC 7452 EPYC 7551 Xeon 5218
Процессоры 1 x AMD EPYC 7452 1 x AMD EPYC 7551 2 x Intel Xeon 5218
Оперативная память 8 x 16GB DDR4-2666 8 x 16GB DDR4-2666 12 x 8 GB DDR4-2666
Диски 1 x Samsung SSD 850 EVO 250GB 1 x Intel SSD S4510 480 GB 1 x Intel SSD S4510 480 GB

Тесты

Тестирование должно быть максимально объективным, тем более что речь идет о сравнении процессоров Intel® и AMD. Поэтому мы не будем использовать оптимизирующих компиляторов для сборки тестов, которые поставляются в виде исходных кодов.

GeekBench 4

GeekBench — популярный кроссплатформенный тест производительности процессора с собственной онлайн-базой результатов. Тест поставляется в виде готовых исполняемых файлов, из-за чего оптимизация под конкретные процессоры не предусмотрена.

Для нас важны общие метрики групп GeekBench:

  • Crypto Score;
  • Integer Score;
  • Floating Point Score;
  • Memory Score.

Указанные группы тестов запускаются в двух режимах: в один поток и при одновременном выполнении на всех ядрах. На основе полученных результатов GeekBench ставит итоговые оценки: Single-Core Score и Multi-Core Score.

Результаты тестирования в режиме Single-Core

Основная борьба разворачивается между AMD EPYC™ 7452 и Intel® Xeon® Gold 5218, в то время как первое поколение EPYC™ во всех тестах уступает второму.

Рассмотрим однопоточные тесты. Rome показывает превосходный результат при работе с криптографическими задачами и памятью, но проигрывает при выполнении целочисленных вычислений. Как результат — второе поколение EPYC™ набирает 4893 балла и становится победителем в номинации Single-Core. Второе и третье место занимают Xeon и EPYC первого поколения с 4695 и 3981 баллами соответственно.

Результаты тестирования в режиме Multi-Core

В многопоточных тестах расклад сил значительно меняется. EPYC™ 7452 отлично справляется с вычислениями, но сдает позиции в криптографических задачах и работе с памятью, что не мешает ему стать лидером с 96009 баллами в номинации Multi-Core.

SPEC CPU 2017

SPEC CPU 2017 — признанный производителями процессоров набор тестов производительности. Тесты данного набора распространяются в виде исходных кодов, что позволяет оптимизировать их под конкретное оборудование на конкретной операционной системе.

SPEC CPU состоит из четырех наборов тестов:

  • int_rate;
  • int_speed;
  • fp_rate;
  • fp_speed.

Первая часть в имени теста определяет вид вычислений на процессоре: целочисленные (int) или над числами с плавающей точкой (fp). Вторая часть определяет вид тестирования: одноядерное (rate) или многоядерное (speed).

Мы провели все четыре набора тестов. Тесты собраны на третьем уровне оптимизаций с помощью набора компиляторов GNU версии 4.8.5. Многоядерные тесты запускались в 64 потока, а одноядерные тесты запускались в 32 копии.

Результаты тестирования набором тестов SPEC 2017

Тесты, собранные с оптимизациями, показывают противоречивые с GeekBench результаты. Второе поколение AMD EPYC™ превосходит двухсокетную систему с процессорами Intel® во всех тестах, кроме intspeed, но с значительно меньшим отрывом, чем в GeekBench.

Phoronix Test Suite

Phoronix Test Suite (PTS) — программное обеспечение, позволяющее запускать тесты из большой базы пользовательских тестов производительности. Данное решение позволяет автоматизировано запускать желаемые тесты на нескольких подопытных серверах одновременно с агрегацией результатов на мастер-сервере.

Мы разработали собственный набор из 21 теста, среди которых:

  • тестирование пропускной способности кэшей (CacheBench);
  • тестирование пропускной способности оперативной памяти (RAMspeed, Stream, MBW);
  • решение криптографических задач (Botan, OpenSSL, John the Ripper);
  • рендеринг изображений методом трассировки лучей (C-Ray, POV-Ray, Smallpt);
  • эмуляция работы сервера NGINX под нагрузкой;
  • конвертирование аудио/видео.
EPYC 7452 EPYC 7551 2 x Xeon 5218
RAMspeed SMP — Type: Add — Benchmark: Integer 32476,9 26531,49 28942,2
RAMspeed SMP — Type: Copy — Benchmark: Integer 30325,76 23419,86 27165,75
RAMspeed SMP — Type: Scale — Benchmark: Integer 30429,76 22011,08 28629,12
RAMspeed SMP — Type: Triad — Benchmark: Integer 31482,6 18208,58 28299,14
RAMspeed SMP — Type: Average — Benchmark: Integer 31060,8 31745,71 28432,31
RAMspeed SMP — Type: Add — Benchmark: Floating Point 32434,26 37939,5 28445,26
RAMspeed SMP — Type: Copy — Benchmark: Floating Point 30386,99 35209,97 27119,9
RAMspeed SMP — Type: Scale — Benchmark: Floating Point 30097,11 30509,05 26508,4
RAMspeed SMP — Type: Triad — Benchmark: Floating Point 32473,04 38458,6 28385,89
RAMspeed SMP — Type: Average — Benchmark: Floating Point 31295,5 34393,3 27637,44
Stream — Type: Copy 107192,8 110996,94 126257,4
Stream — Type: Scale 72434,42 87300,88 105633,7
Stream — Type: Triad 77729,72 97735,96 115100,86
Stream — Type: Add 77021,16 97204,36 114907,6
MBW — Test: Memory Copy — Array Size: 8192 MiB 16888,52 12402,32 4845,29
MBW — Test: Memory Copy, Fixed Block Size — Array Size: 8192 MiB 10752,12 7410,17 2982,56
CacheBench — Test: Read 2312,41 2079,62 3286,28
CacheBench — Test: Write 24357,4 20329,21 27520,75
CacheBench — Test: Read / Modify / Write 24920,3 21598,98 28966,95
GNU MPC — Multi-Precision Benchmark 7143 5810 8950
NAMD — ATPase Simulation — 327,506 Atoms 0,80079 0,94119 0,77091
Botan — Test: KASUMI — Encrypt 69,69 61,74 78,69
Botan — Test: KASUMI — Decrypt 67,16 58,57 74,85
Botan — Test: AES-256 — Encrypt 4575,94 4173,76 3687,71
Botan — Test: AES-256 — Decrypt 4552,92 4152,07 3704,3
Botan — Test: Twofish — Encrypt 279,59 247,38 325,1
Botan — Test: Twofish — Decrypt 281,87 249,85 333,97
Botan — Test: Blowfish — Encrypt 247,76 217,14 282,4
Botan — Test: Blowfish — Decrypt 249,19 217,89 283,61
Botan — Test: CAST-256 — Encrypt 116,150 101,470 124,690
Botan — Test: CAST-256 — Decrypt 116,68 101,95 125,75
John The Ripper — Test: Blowfish 49851 40568 39555
7-Zip Compression — Compress Speed Test 163202 107009 135458
C-Ray — Total Time — 4K, 16 Rays Per Pixel 23,41 26,65 29,48
POV-Ray — Trace Time 18,67 23,3 20,46
Smallpt — Global Illumination Renderer; 128 Samples 15,06 5,52 58,97
dav1d — Video Input: Summer Nature 4K 17,67 28,37 20,98
FLAC Audio Encoding — WAV To FLAC 12,22 14,17 11,43
FFmpeg — H.264 HD To NTSC DV 9,14 10,85 11,46
Hackbench — Count: 1 — Type: Thread 3,9 5,82 3,35
Hackbench — Count: 8 — Type: Thread 10,9 18,11 8,73
Hackbench — Count: 1 — Type: Process 3,78 5,43 3,15
Hackbench — Count: 8 — Type: Process 9,66 13,31 8,14
Hackbench — Count: 32 — Type: Process 39,02 32,25 27,74
OpenSSL — RSA 4096-bit Performance 6825,9 4351,47 6809,23
ctx_clock — Context Switch Time 211 220 160
NGINX Benchmark — Static Web Page Serving 26991,79 17497,02 28274,97
Schbench — Message Threads: 2 — Workers Per Message Thread: 2 42 204 101
Schbench — Message Threads: 8 — Workers Per Message Thread: 8 4624 4704 7009
Schbench — Message Threads: 32 — Workers Per Message Thread: 32 156416 157952 167509
Radiance Benchmark — Test: Serial 807,01 783,48 1102,24
Radiance Benchmark — Test: SMP Parallel 260,47 238,69 333,32

Впервые в тестах AMD EPYC™ 7551 выходит на первое место. Процессоры AMD вне зависимости от поколения лучше справляются в однопоточной работе с памятью, рендеринге и перекодировании видео. Процессоры Intel®, в свою очередь, лучше справляются с криптографическими задачами и многопоточной работой с памятью, как и было выявлено ранее в тестах GeekBench.

Выводы

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

Сравнение процессоров Intel® и AMD — настоящая битва титанов, требующая детального рассмотрения. Устанавливаемые программные решения в среднем выполняются лучше на втором поколении AMD EPYC™. В частности, Rome показывает превосходные результаты в многопоточных вычислениях и однопоточных криптографических задачах. При работе с программным обеспечением, которое компилируется из исходных кодов, предпочтение отдается процессорам нового поколения EPYC™, которые лидируют в тестах с плавающей запятой и лишь незначительно отстают в многопоточных целочисленных вычислениях.

Intel® Xeon® Gold, в свою очередь, показывает хорошие результаты в многопоточной криптографии, перекодировании аудио и работе с памятью. Двухсокетная система с процессорами Intel® Xeon® показала хороший результат при обработке запросов веб-серверов.

Подводя итог, следует отметить, что проведенные тесты являются синтетическими и результаты на реальных задачах могут отличаться. Для получения точных результатов на конкретных задачах необходимо дополнительное тестирование. Теперь буквально пару слов о стоимости. Рекомендованная цена AMD EPYC™ 7452 составляет $2025, для Intel® Xeon® Gold 5218 — $1250, то есть $2500 для организации двухсокетной системы.


Новый AMD EPYC™ 7452 скоро появится в нашей лаборатории Selectel Lab.

Узнайте об этом первыми!


Выход второго поколения EPYC™ — лишь очередной виток в противостоянии AMD и Intel®. Подробнее о том, с чего началось соперничество двух корпораций можно прочитать в нашем блоге. А как вы думаете, сможет ли Intel® дать достойный отпор Rome в ближайшее время?