Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.

AMD Rome – це по-справжньому? Архітектура та початкова продуктивність HPC

Summary: У сучасному світі HPC знайомство з процесором AMD EPYC останнього покоління під кодовою назвою Rome.

This article may have been automatically translated. If you have any feedback regarding its quality, please let us know using the form at the bottom of this page.

Article Content


Symptoms

Гаріма Кочхар, Діпті Черлопалле, Джошуа Віге. HPC та AI Innovation Lab, жовтень 2019 р.

Cause

Не застосовується

Resolution


У сучасному світі HPC процесорЦе гіперпосилання спрямовує вас на веб-сайт за межами Dell Technologies AMD EPYC останнього покоління під кодовою назвою Rome навряд чи потребує представлення.  Останні кілька місяців ми оцінювали системи на базі Риму в лабораторії інновацій HPC та AI , а нещодавно Dell Technologies анонсувала Це гіперпосилання спрямовує вас на веб-сайт за межами Dell Technologies сервери, які підтримують цю архітектуру процесорів. У цьому першому блозі серії Rome ми обговоримо архітектуру процесора Rome, як її можна налаштувати на продуктивність HPC і представити початкову продуктивність мікро-еталонів. У наступних блогах буде описано продуктивність додатків у сферах CFD, CAE, молекулярної динаміки, моделювання погоди та інших застосувань.


 

Архітектура

 

Rome — це процесор EPYC 2-го покоління від AMD, який оновлює Naple 1-го покоління. Минулого року ми обговорювали Неаполь у цьому блозі .

Однією з найбільших архітектурних відмінностей між Неаполем і Римом, яка приносить користь HPC, є новий IO в Римі. У Римі кожен процесор являє собою багатокристальний пакет, що складається з 9 чиплетів , як показано на малюнку 1. Є один центральний 14-нм кристал вводу-виводу, який містить усі функції вводу-виводу та пам'яті – згадайте контролери пам'яті, тканинні зв'язки Infinity всередині сокета та міжсокетного підключення, а також PCI-e. На сокет припадає вісім контролерів пам'яті, які підтримують вісім каналів пам'яті під управлінням DDR4 зі швидкістю 3200 МТ/с. Односокетний сервер може підтримувати до 130 ліній PCIe Gen4. Двосокетна система може підтримувати до 160 ліній PCIe Gen4.

Малюнок 1 Рим

(Рис.1Римський багатокристальний корпус з одним центральним кристалом вводу-виводу та до восьмиядерних кристалів)

Навколо центральної кристала вводу-виводу знаходяться до восьми 7-нм сердечників. Чиплет ядра називається кристалом Core Cache або CCD. Кожна CCD має ядра процесора на базі мікроархітектури Zen2, кеш-пам'ять L2 і кеш-пам'ять L3 об'ємом 32 МБ. Сам CCD має два комплекси Core Cache Complex (CCX),Це гіперпосилання спрямовує вас на веб-сайт за межами Dell Technologies кожен CCX має до чотирьох ядер і 16 МБ кеш-пам'яті L3. На малюнку 2 показаний ССХ.

Малюнок 1 Рим

(Малюнок.2 CCX з чотирма ядрами та спільною кеш-пам'яттю L3 16 МБ)

Різні моделі Це гіперпосилання спрямовує вас на веб-сайт за межами Dell Technologiesпроцесорів Rome мають різну кількість ядер,Це гіперпосилання спрямовує вас на веб-сайт за межами Dell Technologies але всі вони мають один центральний кристал вводу-виводу.  

На топовому торці знаходиться 64-ядерна модель процесора, наприклад, EPYC 7702. Вихід lstopo показує нам, що цей процесор має 16 CCX на сокет, кожен CCX має чотири ядра, як показано на рисунках 3 і 4, таким чином дає 64 ядра на сокет. 16 МБ L3 на CCX, тобто 32 МБ L3 на CCD, дають цьому процесору загалом 256 МБ кеш-пам'яті L3. Однак зауважте, що загальний кеш L3 у Римі не є спільним для всіх ядер. Кеш-пам'ять L3 розміром 16 МБ у кожному CCX є незалежною і використовується лише ядрами в CCX, як показано на малюнку 2.

24-ядерний процесор, такий як EPYC 7402, має 128 МБ кеш-пам'яті L3. Вихід lstopo на рисунках 3 і 4 ілюструє, що ця модель має три ядра на CCX і 8 CCX на сокет.

Малюнок 31 Рим

Малюнок 32 Рим

(Рис.3 і 4 lstopo вихід для 64-ядерних і 24-ядерних процесорів)

Незалежно від кількості ПЗЗ, кожен римський процесор логічно розділений на чотири квадранти , причому ПЗЗ розподілені максимально рівномірно по квадрантах і два канали пам'яті в кожному квадранті. Центральну кристал вводу-виводу можна розглядати як таку, що логічно підтримує чотири квадранти гнізда.


Повернутися до початку

 

 

Опції BIOS на основі архітектури Rome

 

Центральний кристал IO в Римі допомагає покращити затримки Це гіперпосилання спрямовує вас на веб-сайт за межами Dell Technologies пам'яті порівняно з тими, що вимірюються в Неаполі. Крім того, це дозволяє конфігурувати процесор як єдиний домен NUMA, забезпечуючи рівномірний доступ до пам'яті для всіх ядер сокета. Про це розказано нижче.

Чотири логічні квадранти в римському процесорі дозволяють розділити центральний процесор на різні домени NUMA. Цей параметр називається NUMA per socket або NPS.

  • NPS1 має на увазі, що процесор Rome є єдиним доменом NUMA, з усіма ядрами в сокеті та всією пам'яттю в цьому одному домені NUMA. Пам'ять чергується між вісьмома каналами пам'яті. Усі пристрої PCIe на сокеті належать до цього єдиного домену NUMA
  • NPS2 розділяє процесор на два домени NUMA, з половиною ядер і половиною каналів пам'яті на сокеті в кожному домені NUMA. Пам'ять чергується між чотирма каналами пам'яті в кожному домені NUMA
  • NPS4 розділяє процесор на чотири домени NUMA. Кожен квадрант тут є доменом NUMA, і пам'ять чергується між двома каналами пам'яті в кожному квадранті. Пристрої PCIe будуть локальними для одного з чотирьох доменів NUMA на сокеті залежно від того, який квадрант кристала вводу-виводу має кореневий вміст PCIe для цього пристрою
  • Не всі процесори можуть підтримувати всі налаштування NPS

Там, де це можливо, NPS4 рекомендується для HPC, оскільки очікується, що він забезпечить найкращу пропускну здатність пам'яті, найменші затримки пам'яті, а наші програми, як правило, знають NUMA. Там, де NPS4 недоступний, ми рекомендуємо найвищий NPS, що підтримується моделлю процесора - NPS2 або навіть NPS1.

З огляду на безліч опцій NUMA, доступних на платформах, розташованих у Римі, BIOS PowerEdge дозволяє два різні методи нумерації ядра під нумерацією MADT. Лінійне перерахування нумерує ядра по порядку, заповнюючи один CCX, CCD, сокет перед переходом до наступного сокета. На процесорі 32c ядра від 0 до 31 будуть на першому сокеті, ядра 32-63 на другому роз'ємі. Круговий перелік нумерує ядра в регіонах NUMA. При цьому на першому сокеті будуть парні жили, на другому - непарні. Для простоти ми рекомендуємо лінійний перебір для HPC. На рисунку 5 наведено приклад перерахування лінійних ядер на двосокетному сервері 64c, налаштованому в NPS4. На малюнку кожна коробка з чотирьох ядер є CCX, кожен набір суміжних восьми ядер є CCD.

Малюнок 4 Рим

(Рис.5 Лінійне перерахування ядер на двосокетній системі, 64c на сокет, конфігурація NPS4 на моделі процесора 8 CCD)

Ще одна опція BIOS для Риму називається Preferred IO Device. Це важлива ручка налаштування пропускної здатності та швидкості повідомлень InfiniBand. Це дозволяє платформі пріоритезувати трафік для одного пристрою вводу-виводу. Ця опція доступна як на односокетних, так і на двосокетних платформах Rome, і пристрій InfiniBand на платформі необхідно вибрати як бажаний пристрій у меню BIOS, щоб досягти повної частоти повідомлень, коли всі ядра процесора активні.

Подібно до Неаполя, Рим також підтримує гіперпоточністьабо логічний процесор. Для HPC ми залишаємо це вимкненим, але деякі програми можуть отримати вигоду від увімкнення логічного процесора. Шукайте наші подальші блоги, присвячені прикладним дослідженням молекулярної динаміки.

Подібно до Неаполя, Рим також дозволяє CCX як домен NUMA. Цей параметр відкриває кожен CCX як вузол NUMA. У системі з двосокетними процесорами з 16 CCX на процесор цей параметр відкриває 32 домени NUMA. У цьому прикладі кожен сокет має 8 CCD, тобто 16 CCX. Кожен CCX може бути включений як окремий домен NUMA, що дає 16 вузлів NUMA на сокет і 32 в системі з двома сокетами. Для HPC ми рекомендуємо залишити CCX як домен NUMA за замовчуванням вимкнено. Очікується, що увімкнення цього параметра допоможе віртуалізованим середовищам.

Подібно до Неаполя, Рим дозволяє встановити систему в режимі детермінізму продуктивності або детермінізму потужності . У детермінізмі продуктивності система працює на очікуваній частоті для моделі процесора, зменшуючи варіативність на кількох серверах. У Power Determinism система працює на максимально доступному TDP CPU моделі. Це посилює варіації виробничого процесу, дозволяючи деяким серверам бути швидшими за інші. Усі сервери можуть споживати максимальну номінальну потужність центрального процесора, що робить енергоспоживання детермінованим, але допускає деяку різницю продуктивності на кількох серверах.

Як і слід було очікувати від платформ PowerEdge, BIOS має мета-опцію під назвою «Системний профіль». Вибір профілю системи Performance Optimized увімкне режим турбонаддуву, вимкне C-стани та встановить повзунок детермінізму на Power Determinism, оптимізуючи продуктивність.


Повернутися до початку

 

 

Результати продуктивності – мікробенчмарки STREAM, HPL, InfiniBand

 

Багато хто з наших читачів, можливо, відразу перейшли до цього розділу, тому ми зануримося в нього.

У лабораторії інновацій HPC та штучного інтелекту ми створили кластер із 64 серверами в Римі, який ми називаємо Minerva. На додаток до однорідного кластера Minerva, у нас є кілька інших зразків процесорів Rome, які ми змогли оцінити. Наш випробувальний стенд описаний в Таблиці 1 і Таблиці 2.

(Табл. 1 Римські моделі процесорів, оцінені в цьому дослідженні)

ЦП Кількість ядер на роз'єм Конфігурація Базовий годинник ТДП
7702 64 С 4c на CCX 2,0 ГГц 200 Вт
7502 32 С 4c на CCX 2,5 ГГц 180 Вт
7452 32 С 4c на CCX 2,35 ГГц 155 Вт
7402 24с 3c на CCX 2,8 ГГц 180 Вт

(Табл.2 Випробувальний стенд)

Компонент Деталі
Сервер PowerEdge C6525
Процесор Як показано в таблиці.1 подвійна розетка
Пам'ять 256 ГБ, 16x16 ГБ пам'яті 3200 МТ/с DDR4
З'єднання ConnectX-6 Mellanox Infini Band HDR100
Операційна система Red Hat Enterprise Linux 7.6
Ядра 3.10.0.957.27.2.e17.x86_64
Диск Модуль SATA SSD M.2 ємністю 240 ГБ


Повернутися до початку

 

 

ПОТІК

 

Тести пропускної здатності пам'яті на Rome представлені на рис.6, ці тести проводилися в режимі NPS4. Ми виміряли пропускну здатність пам'яті ~270-300 ГБ/с на нашому двосокетному PowerEdge C6525 при використанні всіх ядер сервера в чотирьох моделях процесорів, перелічених у таблиці.1. Коли на CCX використовується лише одне ядро, пропускна здатність системної пам'яті на ~9-17% вища, ніж у всіх ядрах.

Більшість робочих навантажень HPC або повністю підписуються на всі ядра системи, або центри HPC працюють у режимі високої пропускної здатності з кількома завданнями на кожному сервері. Таким чином, пропускна здатність всеядерної пам'яті є більш точним відображенням пропускної здатності пам'яті та можливостей пропускної здатності пам'яті на ядро системи.

На малюнку 6 також показана пропускна здатність пам'яті, виміряна на платформі EPYC Naples попереднього покоління, яка також підтримувала вісім каналів пам'яті на сокет, але працювала зі швидкістю 2667 МТ/с. Римська платформа забезпечує на 5-19% кращу загальну пропускну здатність пам'яті, ніж Неаполь, і це в основному пов'язано з більш швидкою пам'яттю 3200 МТ/с. Навіть з 64c на сокет система Rome може забезпечити швидкість до 2 ГБ/с/ядро.

ПРИМІТКА: Різниця в продуктивності в результатах STREAM Triad на 5-10% була виміряна на декількох серверах з однаковою конфігурацією в Римі, тому наведені нижче результати слід вважати верхніми в діапазоні.
 

Порівнюючи різні конфігурації NPS, за допомогою NPS4 було виміряно на ~13% більшу пропускну здатність пам'яті порівняно з NPS1, як показано на рисунку 7.

Малюнок 5 Рим

(Рис.6 Пропускна здатність пам'яті Dual-socket NPS4 STREAM Triad)

Малюнок 6 Рим

(Рис.7 NPS1 vs NPS2 vs NPS 4 Пропускна здатність пам'яті)


Повернутися до початку

 

 

Пропускна здатність InfiniBand і швидкість повідомлень

 

На малюнку 8 побудована одноядерна смуга пропускання InfiniBand для однонаправлених і двонаправлених тестів. На тестовому стенді використовувався HDR100, що працює зі швидкістю 100 Гбіт/с, і графік показує очікувану продуктивність лінійної швидкості для цих тестів.

Малюнок 6 IBBW

Рис.8 Пропускна здатність InfiniBand (одноядерна))

Малюнок 6 IBBW

Рис.9 Швидкість повідомлень InfiniBand (всі ядра))

Далі були проведені тести швидкості повідомлень з використанням усіх ядер сокета на двох протестованих серверах. Коли в BIOS увімкнено бажаний вводу-вивід, а адаптер ConnectX-6 HDR100 налаштований як бажаний пристрій, частота повідомлень на всіх ядрах значно вища, ніж коли не ввімкнено, як показано на малюнку 9. Це ілюструє важливість цієї опції BIOS при налаштуванні на HPC і особливо для масштабованості багатовузлових додатків.


Повернутися до початку

 

 

HPL

 

Римська мікроархітектура може виводити з ладу 16 DP FLOP/цикл, що вдвічі більше, ніж у Неаполі, який становив 8 FLOPS/цикл. Це дає Риму в 4 рази більше теоретичного піку FLOPS над Неаполем, в 2 рази більше можливостей з плаваючою комою і в 2 рази більше ядер (64c проти 32c). На малюнку 10 показані результати вимірювання HPL для чотирьох моделей процесорів Rome, які ми тестували, а також наші попередні результати з системи, розташованої в Неаполі. Ефективність Rome HPL відзначається як відсоткове значення над стовпчиками на графіку і є вищою для моделей процесорів з нижчим TDP.

Тести проводилися в режимі детермінізму потужності, і було виміряно ~5% дельту продуктивності на 64 однаково налаштованих серверах, таким чином, результати тут знаходяться в цьому діапазоні продуктивності.

Малюнок 9 Рим

(Рис.10 Односерверний HPL в NPS4)

Були виконані наступні багатовузлові HPL-тести, результати яких відображені на рис.11. Ефективність HPL для EPYC 7452 залишається вищою за 90% на 64-вузловому рівні, але падіння ефективності зі 102% до 97% і назад до 99% потребує подальшої оцінки

Малюнок 10 Рим

(Рис.11 Багатовузловий HPL, двосокетний EPYC 7452 через HDR100 InfiniBand)


Повернутися до початку

 

 

Підсумки та що буде далі

 

Початкові дослідження продуктивності серверів, розташованих у Римі, показують очікувану продуктивність для нашого першого набору тестів HPC. Налаштування BIOS важливе під час налаштування для найкращої продуктивності, і параметри налаштування доступні в нашому профілі робочого навантаження BIOS HPC, який можна налаштувати на заводі або встановити за допомогою утиліт керування системами Dell EMC.

HPC та AI Innovation Lab мають новий кластер PowerEdge Minerva на 64 сервери в Римі. Слідкуйте за подальшими блогами, які описують дослідження продуктивності додатків у нашому новому кластері Minerva.


Повернутися до початку

 

Article Properties


Last Published Date

15 Mar 2024

Version

6

Article Type

Solution