PowerEdge: AMD Rome: arquitectura y rendimiento inicial de HPC

Summary: En la escena actual de HPC, presentamos la última generación del procesador EPYC de AMD, cuyo nombre en código es Rome.

Ez a cikk a következő(k)re vonatkozik: Ez a cikk nem vonatkozik a következő(k)re: Ez a cikk nem kapcsolódik egyetlen konkrét termékhez sem. Ez a cikk nem azonosítja az összes termékverziót.

Instructions

Garima Kochhar, Deepthi Cherlopalle, Joshua Weage. Laboratorio de innovación en HPC e IA, octubre de 2019


 


En la escena actual de HPC, la última generación del procesador EPYCEste hipervínculo lo redirige a un sitio web fuera de Dell Technologies. de AMD, cuyo nombre en código es Rome, apenas necesita presentación. En los últimos meses, hemos estado evaluando los sistemas basados en Rome en el laboratorio de innovación en HPC e IAEste hipervínculo lo redirige a un sitio web fuera de Dell Technologies.. Además, Dell Technologies anunció recientementeEste hipervínculo lo redirige a un sitio web fuera de Dell Technologies. servidores que admiten esta arquitectura de procesador. En este primer blog de la serie Rome, se analiza la arquitectura del procesador Rome, cómo se puede ajustar para el rendimiento de HPC y se presenta el rendimiento inicial de los microparámetros de referencia. En los blogs posteriores, se describe el rendimiento de las aplicaciones en los dominios de CFD, CAE, dinámica molecular, simulación meteorológica y otras aplicaciones.


 

Arquitectura

 

Rome es la CPU EPYC de 2.ª generación de AMD, que reemplaza a Naples de la 1.ª generación. 

Una de las mayores diferencias arquitectónicas entre Naples y Rome que beneficia a la HPC es la nueva placa de I/O en Rome. En Rome, cada procesador es un paquete de multichip que consta de hasta nueve chiplets, como se muestra en la Figura 1. Hay una placa central de I/O de 14 nm que contiene todas las funciones de I/O y memoria: piense en controladoras de memoria, enlaces de fabric Infinity dentro del socket y conectividad entre sockets, y PCI-e. Hay ocho controladoras de memoria por socket que admiten ocho canales de memoria que ejecutan DDR4 a 3200 MT/s. Un servidor de un solo socket puede admitir hasta 130 canales PCIe de 4.ª generación. Un sistema de dos sockets puede admitir hasta 160 canales PCIe de 4.ª generación.

Figura 1, Rome

(Figura 1: Paquete multichip de Rome con una placa de I/O central y hasta ocho placas de núcleo)

Alrededor de la placa de I/O central hay hasta ocho chiplets de núcleo de 7 nm. El chiplet de núcleo se denomina placa de caché de núcleo o CCD. Cada CCD tiene núcleos de CPU basados en la microarquitectura Zen2, caché L2 y caché L3 de 32 MB. El CCD en sí tiene dos complejos de caché de núcleo (CCX)Este hipervínculo lo redirige a un sitio web fuera de Dell Technologies., cada CCX tiene hasta cuatro núcleos y 16 MB de caché L3. En la Figura 2 se muestra un CCX.

Figura 1, Rome

(Figura 2: Un CCX con cuatro núcleos y un caché L3 compartido de 16 MB)

Los diferentes modelos de CPU RomeEste hipervínculo lo redirige a un sitio web fuera de Dell Technologies. tienen diferentes números de núcleosEste hipervínculo lo redirige a un sitio web fuera de Dell Technologies., pero todos tienen una placa de I/O central.

En el extremo superior se encuentra un modelo de CPU de 64 núcleos, por ejemplo, el EPYC 7702. En el resultado de Lstopo, se muestra que este procesador tiene 16 CCX por socket, cada CCX tiene cuatro núcleos como se muestra en las Figuras 3 y 4, lo que produce 64 núcleos por socket. 16 MB de L3 por CCX, es decir, 32 MB de L3 por CCD, lo que le da a este procesador 256 MB de caché L3. Sin embargo, tenga en cuenta que el caché L3 total en Rome no es compartido por todos los núcleos. La caché L3 de 16 MB en cada CCX es independiente y solo lo comparten los núcleos en el CCX, como se muestra en la Figura 2.

Una CPU de 24 núcleos como el EPYC 7402 tiene un caché L3 de 128 MB. La salida de Lstopo en las Figuras 3 y 4 muestran que este modelo tiene tres núcleos por CCX y ocho CCX por socket.

Figura 31, Rome

Figura 32, Rome

(Figuras 3 y 4: Resultado de Lstopo para las CPU de 64 y 24 núcleos)

Sin importar la cantidad de CCD, cada procesador Rome se divide lógicamente en cuatro cuadrantes, con CCD distribuidos de la manera más uniforme posible entre los cuadrantes y dos canales de memoria en cada cuadrante. Se puede considerar que la placa de I/O central admite lógicamente los cuatro cuadrantes del socket.


Volver al principio

 


 

Opciones de BIOS basadas en la arquitectura de Rome

 

La placa central de I/O en Rome ayuda a mejorar las latencias de la memoriaEste hipervínculo lo redirige a un sitio web fuera de Dell Technologies. con respecto a las medidas en Naples. Además, permite que la CPU se configure como un solo dominio NUMA, lo que permite un acceso uniforme a la memoria para todos los núcleos en el socket. Esto se explica a continuación.

Los cuatro cuadrantes lógicos en un procesador Rome permiten particionar la CPU en diferentes dominios NUMA. Esta configuración se denomina NUMA por socket o NPS.

  • NPS1 quiere decir que la CPU de Rome es un único dominio NUMA, con todos los núcleos en el conector y toda la memoria en este dominio NUMA. La memoria se intercala en los ocho canales de memoria. Todos los dispositivos PCIe en el socket pertenecen a este único dominio NUMA
  • NPS2 divide la CPU en dos dominios NUMA, con la mitad de los núcleos y la mitad de los canales de memoria en el socket en cada dominio NUMA. La memoria se intercala en los cuatro canales de memoria en cada dominio NUMA
  • NPS4 divide la CPU en cuatro dominios NUMA. Es decir, cada cuadrante es un dominio NUMA y la memoria se intercala en los dos canales de memoria de cada cuadrante. Los dispositivos PCIe son locales para uno de los cuatro dominios NUMA en el socket, según el cuadrante de la placa de I/O que tenga la raíz PCIe para ese dispositivo
  • No todas las CPU son compatibles con todos los ajustes de NPS

Cuando está disponible, se recomienda usar NPS4 para HPC, ya que se espera que proporcione el mejor ancho de banda de memoria y las latencias de memoria más bajas, además, nuestras aplicaciones tienden a ser compatibles con NUMA. Cuando NPS4 no está disponible, recomendamos el NPS más alto compatible con el modelo de CPU: NPS2 o incluso NPS1.

Debido a que hay muchas opciones de NUMA disponibles en las plataformas basadas en Rome, el BIOS de PowerEdge permite dos métodos diferentes de enumeración de núcleos en la enumeración MADT. La enumeración lineal cuenta los núcleos en orden, ya que llena un socket CCX y CCD antes de pasar al siguiente socket. En una CPU de 32 núcleos, los núcleos del 0 al 31 se encuentran en el primer socket y los núcleos del 32 al 63 en el segundo. La enumeración round robin cuenta los núcleos en las regiones NUMA. En este caso, los núcleos con numeración par se encuentran en el primer socket y los núcleos con numeración impar en el segundo. A fin de simplificar, se recomienda la enumeración lineal para HPC. Consulte la Figura 5 para ver un ejemplo de enumeración de núcleos lineales en un servidor de 64 núcleos de dos sockets configurado en NPS4. En la figura, cada caja de cuatro núcleos es un CCX, cada conjunto de ocho núcleos contiguos es un CCD.

Figura 4, Rome

(Figura 5: Enumeración lineal de núcleos en un sistema de dos conectores, 64 núcleos por conector, configuración NPS4 en un modelo de ocho CPU de CCD)

Otra opción del BIOS específica de Rome se denomina Dispositivo de I/O preferido. Esta es una perilla de ajuste importante para el ancho de banda y la velocidad de mensajes de InfiniBand. Permite que la plataforma priorice el tráfico para un dispositivo de I/O. Esta opción está disponible en plataformas Rome de uno y dos sockets, y el dispositivo InfiniBand en la plataforma debe seleccionarse como el dispositivo preferido en el menú del BIOS para lograr la velocidad de mensajes completa cuando todos los núcleos de CPU están activos.

Al igual que Naples, Rome también es compatible con hyper-threading o procesador lógico. Para HPC, dejamos esta opción deshabilitada, pero algunas aplicaciones pueden beneficiarse de habilitar el procesador lógico. Busque nuestros blogs posteriores sobre estudios de aplicación de dinámica molecular.

Al igual que en Naples, Rome también permite CCX como dominio NUMA. Esta opción expone cada CCX como un nodo NUMA. En un sistema con CPU de dos sockets con 16 CCX por CPU, esta configuración expone 32 dominios NUMA. En este ejemplo, cada conector tiene ocho CCD, es decir, 16 CCX. Cada CCX se puede habilitar como su propio dominio NUMA, lo que proporciona 16 nodos NUMA por socket y 32 en un sistema de dos sockets. Para HPC, se recomienda dejar CCX como dominio NUMA en la opción predeterminada deshabilitado. Se espera que habilitar esta opción ayude a los entornos virtualizados.

Al igual que en Naples, Rome permite configurar el sistema en los modos Determinismo de rendimiento o Determinismo de alimentación. En el Determinismo de rendimiento, el sistema funciona a la frecuencia esperada para el modelo de CPU, lo que reduce la variabilidad entre varios servidores. En el Determinismo de alimentación, el sistema funciona con la TDP máxima disponible del modelo de CPU. Esto amplifica la variación de una pieza a otra en el proceso de fabricación, lo que permite que algunos servidores sean más rápidos que otros. Todos los servidores pueden consumir la alimentación nominal máxima de la CPU, lo que hace que el consumo de energía sea determinista, sin embargo, permite cierta variación de rendimiento entre varios servidores.

Como es de esperar de las plataformas PowerEdge, el BIOS tiene una opción de metadatos denominada Perfil del sistema. Cuando selecciona el perfil de sistema Optimizado para el rendimiento, se habilita el modo Turbo Boost, se deshabilitan los estados C y se establece el Determinismo de alimentación, con lo cual se optimiza el rendimiento.


Volver al principio

 


 

Resultados de rendimiento: microparámetros de referencia STREAM, HPL e InfiniBand

 

Es posible que muchos de nuestros lectores hayan ido directamente a esta sección, así que nos sumergimos de lleno.

En el laboratorio de innovación de HPC e IA, creamos un clúster de 64 servidores basado en Rome que llamamos Minerva. Además del clúster homogéneo de Minerva, tenemos algunas otras muestras de CPU de Rome que podríamos evaluar. Nuestro banco de pruebas se describe en la Tabla 1 y en la Tabla 2.

(Tabla 1 Modelos de CPU de Rome evaluados en este estudio)

CPU Núcleos por socket Configuración Reloj base TDP
7702 64c 4 núcleos por CCX 2,0 GHz 200 W
7502 32c 4 núcleos por CCX 2.5 GHz 180 W
7452 32c 4 núcleos por CCX 2,35 GHz 155 W
7402 24c 3 núcleos por CCX 2.8 GHz 180 W

(Tabla 2 Banco de pruebas)

Componente Detalles
Servidor PowerEdge C6525
Procesador Como se muestra en el socket doble de la Tabla 1
Memoria 256 GB, 16 x 16 GB, 3200 MT/s, DDR4
Interconexión ConnectX-6 Mellanox Infini Band HDR100
Sistema operativo Red Hat Enterprise Linux 7.6
Kernel 3.10.0.957.27.2.e17.x86_64
Disco Módulo SSD M.2 SATA de 240 GB


Volver al principio

 


 

STREAM

 

En la Figura 6, se presentan las pruebas de ancho de banda de memoria en Rome. Estas pruebas se ejecutaron en modo NPS4. Medimos el ancho de banda de memoria de aproximadamente entre 270 y 300 Gb/s en nuestro PowerEdge C6525 de dos sockets cuando se utilizaron todos los núcleos del servidor en los cuatro modelos de CPU que se enumeran en la Tabla 1. Cuando se utiliza un solo núcleo por CCX, el ancho de banda de la memoria del sistema es aproximadamente entre un 9 y un 17 % mayor que el medido con todos los núcleos.

La mayoría de las cargas de trabajo de HPC agregarán completamente todos los núcleos del sistema o los centros de HPC se ejecutarán en modo de alto rendimiento con varios trabajos en cada servidor. Por lo tanto, el ancho de banda de memoria de todos los núcleos es la representación más precisa del ancho de banda de memoria y las funcionalidades de ancho de banda de memoria por núcleo del sistema.

En la Figura 6, también se representa el ancho de banda de memoria medido en la plataforma EPYC Naples de la generación anterior, que también admitía ocho canales de memoria por conector, pero se ejecutaba a 2667 MT/s. La plataforma Rome proporciona entre un 5 % y un 19 % más de ancho de banda de memoria total que Naples, y esto se debe en gran medida a una memoria más rápida de 3200 MT/s. Incluso con 64 núcleos por socket, el sistema Rome puede ofrecer más de 2 Gb/s por núcleo.

NOTA: Se midió una variación de rendimiento del 5 % al 10 % en los resultados de STREAM Triad en varios servidores basados en Rome configurados de manera idéntica. Se debe suponer que los resultados que aparecen a continuación son el extremo superior del rango.

 

Al comparar las diferentes configuraciones de NPS, se midió un ancho de banda de memoria aproximadamente un 13 % mayor con NPS4 en comparación con NPS1, como se muestra en la Figura 7.

Figura 5, Rome

(Figura 6: Ancho de banda de memoria de STREAM Triad de NPS4 de dos sockets)

Figura 6, Rome

(Figura 7: Ancho de banda de memoria NPS1 frente a NPS2 frente a NPS 4)


Volver al principio

 


 

Velocidad de ancho de banda y mensajes de InfiniBand

 

En la Figura 8 se representa el ancho de banda InfiniBand de un solo núcleo para pruebas unidireccionales y bidireccionales. El banco de pruebas utilizó HDR100 que se ejecuta a 100 Gb/s y el gráfico muestra el rendimiento de velocidad de línea esperado para estas pruebas.

Figura 6, IBBW

(Figura 8: Ancho de banda de InfiniBand [un núcleo])

Figura 6, IBBW

(Figura 9: Velocidad de mensajes de InfiniBand [todos los núcleos])

Para las pruebas de velocidad de mensajes, se usaron todos los núcleos de un socket en los dos servidores sometidos a prueba. Cuando la I/O preferida está habilitada en el BIOS y el adaptador ConnectX-6 HDR100 está configurado como el dispositivo preferido, la velocidad de mensajes de todos los núcleos es mayor que cuando la I/O preferida no está habilitada, como se muestra en la Figura 9. Esto demuestra la importancia de esta opción de BIOS cuando se ajusta para HPC y, especialmente, para la escalabilidad de aplicaciones de varios nodos.


Volver al principio

 


 

HPL

 

La microarquitectura Rome puede retirar 16 DP FLOP por ciclo, el doble que Naples, que era de 8 FLOPS por ciclo. Por lo tanto, Rome supera cuatro veces el máximo teórico de FLOPS por sobre Naples, el doble desde la funcionalidad de punto flotante mejorada y en dos veces desde el doble de núcleos (64 núcleos frente a 32 núcleos). En la Figura 10, se muestran los resultados de HPL medidos para los cuatro modelos de CPU Rome que probamos, junto con nuestros resultados anteriores de un sistema basado en Naples. La eficiencia de HPL de Rome se indica como el valor porcentual por encima de las barras en el gráfico y es mayor para los modelos de CPU de TDP más bajos.

Las pruebas se ejecutaron en modo de Determinismo de alimentación y se midió un delta de aproximadamente un 5 % en rendimiento en 64 servidores configurados de manera similar; los resultados que se presentan están en esa banda de rendimiento.

Figura 9, Rome

(Figura 10: HPL de un solo servidor en NPS4)

Se realizaron las siguientes pruebas de HPL de varios nodos y esos resultados se representan en la Figura 11. Las eficiencias de HPL para EPYC 7452 se mantienen por encima del 90 % en una escala de 64 nodos, pero las caídas en la eficiencia del 102 % al 97 % y de vuelta al 99 % necesitan una evaluación adicional.

Figura 10, Rome

(Figura 11: HPL de varios nodos, EPYC 7452 de dos sockets sobre InfiniBand HDR100)


Volver al principio

 


 

Resumen y próximos pasos:

 

Los estudios de rendimiento iniciales en servidores basados en Rome muestran el rendimiento esperado para nuestro primer conjunto de parámetros de referencia de HPC. El ajuste del BIOS es importante cuando se configura para obtener el mejor rendimiento, y las opciones de ajuste están disponibles en nuestro perfil de carga de trabajo de HPC del BIOS que se puede venir configurado de fábrica o establecerlo mediante las utilidades de administración de sistemas de Dell EMC.

El laboratorio de innovación en HPC e IAEste hipervínculo lo redirige a un sitio web fuera de Dell Technologies. tiene un nuevo clúster de PowerEdge Minerva con 64 servidores basado en Rome. Esté atento a este espacio para ver los siguientes blogs que describen los estudios de rendimiento de las aplicaciones en nuestro nuevo clúster Minerva.


Volver al principio

 


Érintett termékek

Mellanox Family of Adapters, PowerEdge C6525, PowerEdge C6615, PowerEdge R6515, PowerEdge R6525, PowerEdge R6615, PowerEdge R6625, PowerEdge R6715, PowerEdge R6725, PowerEdge R7515, PowerEdge R7525, PowerEdge R7615, PowerEdge R7625, PowerEdge R7715 , PowerEdge R7725, PowerEdge R7725xd ...
Termék tulajdonságai
Article Number: 000137696
Article Type: How To
Utoljára módosítva: 16 okt. 2025
Version:  11
Választ kaphat kérdéseire más Dell-felhasználóktól
Támogatási szolgáltatások
Ellenőrizze, hogy a készüléke rendelkezik-e támogatási szolgáltatással.