Las AMD Instinct MI200 basadas en la arquitectura CDNA2 de AMD son tarjetas gráficas para computación de alto rendimiento que se diseñaron para el superordenador El Capitán y que traen consigo varias novedades, como es el hecho de ser la primera GPU Dual sobre interposer de toda la historia.
Las GPU han realizado una increíble evolución desde sus inicios, ya que a día de hoy no solamente se utilizan para generar los impresionantes fotogramas de nuestros juegos favoritos, sino también para diversas aplicaciones de computación de propósito general donde la CPU no es lo suficientemente buena para ejecutar ciertos algoritmos.
Se ha de tener en cuenta que AMD tiene presencia en GPU Gaming gracias a sus productos Radeon, donde en la actualidad es la arquitectura RDNA 2 empleada en sus RX 6000, pero la empresa de Lisa Su ha decidido crear una arquitectura distinta de cara a la computación de alto rendimiento.
Especificaciones de la AMD Instinct MI200
Tarjeta Gráfica | AMD Instinct MI250 | AMD Instinct MI250X |
---|---|---|
Arquitectura | CDNA2 | CDNA2 |
Nodo de fabricación | 6 nm TSMC | 6 nm TSMC |
Número de GPU | 2 | 2 |
Compute Units activas | 208, 104 por GPU | 220, 110 por GPU |
Potencia en FP16 (Matrix Core Units) | 362 TFLOPS | 382 TFLOPS |
Potencia en FP32 (Unidades SIMD) | 45,3 TFLOPS | 47,9 TFLOPS |
Potencia en FP64 (Unidades SIMD) | 45,3 TFLOPS | 47,9 TFLOPS |
Tipo de VRAM | HBM2E | HBM2E |
Cantidad de VRAM | 128 GB | 128 GB |
Ancho de banda VRAM | 3,2 TB/s | 3,2 TB/s |
Factor Forma | OAM | OAM |
AMD ha decidido dar un golpe de efecto en el mundo de la computación de alto rendimiento con su serie de GPU Instinct MI200, la cual en cuanto a potencia de cálculo se trata del hardware más potente que se ha hecho hasta el momento y cuyas especificaciones técnicas son las que podéis ver en la tabla de arriba.
Las AMD Intinct MI200 se han gestado principalmente para ser utilizadas en el superordenador El Capitan, de ahí que el factor forma de las AMD Intinct MI250 y MI250X sea precisamente el OAM que es típico de este tipo de hardware. No obstante esto no significa que no podamos instalar una AMD Intinct MI200 en nuestro PC por si queremos emplearla para el desarrollo científico en un PC HEDT o un servidor, ya que la Instinct MI210 es la versión en formato PCI Express y factor forma de tarjeta gráfica convencional que se lanzará más adelante.
La primera GPU Dual para HPC
Nos encontramos ante las primeras tarjetas gráficas para computación de alto rendimiento o HPC de doble GPU que aparece en el mercado, lo cual ha sido posible gracias al uso de la tecnología CoWoS-S de TSMC de tercera generación, la cual fue creada por la fundición taiwanesa para que AMD pudiese hacer realidad sus AMD Intinct MI200.
Como se puede ver, encima del interposer nos encontramos con dos GPU y 8 pilas de memoria HBM2E, esto significa que estamos ante un bus de 8.192 bits en total. ¿El ancho de banda que proporciona? Ni más ni menos que 3,2 TB/s, el doble que la NVIDIA A100 y todo gracias al uso de una interfaz más ancha y memoria más rápida.
Elevated Fanout Bridge
La comunicación entre las GPU y la memoria HBM2E se realiza utilizando lo que AMD ha bautizado como Elevated Fanout Bridge, el cual es un puente de silicio que no se construye dentro de la circuitería interna del Interposer, sino que está construido por encima del mismo. Esto significa que en las AMD Instinct MI200 tenemos tres niveles en vez de dos, por lo que se trata de una GPU más compleja de fabricar y eso afecta al coste, pero hemos de tener en cuenta cuál es el mercado objetivo de estas tarjetas gráficas y no es precisamente el doméstico.
El EFB es una tecnología similar al EMIB de Intel y sirve para comunicar tanto cada GPU con las pilas de memoria HBM2e que tienen más cercanas así como ambas GPU entre sí. De cara a comunicarse con el Interposer a un nivel inferior hace uso de columnas construidas en cobre que se encuentran al mismo nivel de la estructura que el EFB.
La arquitectura CDNA 2 de las AMD Instinct MI200
Lo importante en toda GPU es su arquitectura, no obstante hemos de partir que CDNA 2 no es lo que podríamos decir una GPU al uso, ya que tiene una serie de diferencias que la hacen solamente útil para la computación de alto rendimiento y no para generar gráficos, es más, pese a que su arquitectura se basa en la de una GPU al tomar como base la arquitectura Vega, realmente no sirve para su función principal:
- El anillo 0 del procesador de comandos, el cual se encarga de manejar la lista de pantalla no se encuentra en CDNA 2.
- Las unidades de función fija que se utilizan para ciertas funciones repetitivas y redundantes en gráficos han sido eliminadas.
- El controlador de pantalla, encargado de controlar el envío de la imagen al monitor ha sido eliminado, así como las salidas de vídeo.
Por lo que al final CDNA 2 se queda en una máquina con una enorme capacidad para calcular números a gran velocidad y en paralelo. Para ello cada una de las dos GPU de la arquitectura CDNA 2 de las AMD Instinct Mi200 está organizada en 4 Compute Units con un total de 32 Compute Units cada una, por lo que tenemos físicamente un total de 128 CU por GPU, pero «solo» están activas 104 o 110 según cuál sea el modelo del que estemos hablando.
La Compute Unit de CDNA 2
Cada una de las Compute Units está compuesta por 4 bloques distintos donde ellas tienen las siguientes unidades:
- Una unidad SIMD16 de 32 bits en coma flotante o enteros, para un total de 64 ALU por Compute Unit.
- La novedad respecto a CDNA1 es la nueva unidad SIMD16 de 64 bits en coma flotante. La cantidad de ALU es la misma que en FP32, 64.
- Una Matrix Core Unit, la cual es utilizada para los cálculos con matrices. Es la clásica unidad Tensor y es importante para algoritmos de aprendizaje profundo avanzados.
La Compute Unit tiene 4 sets de registros distintos y el planificador se encarga de alimentar con olas llenas de hilos de ejecución, por lo que cada uno de los cuatro bloques trabaja con una ola distinta al mismo tiempo. Según el tipo de ola se activan un grupo de unidades u otras, ya que comparten registros.
La gran novedad respecto al CDNA de primera generación de las Intinct MI100 es la unidad SIMD de 16 componentes en coma flotante de 64 bits, una precisión que es necesaria de cara a la computación científica. Este cambio ha permitido que la capacidad de cálculo en 32 bits y 64 bits sea la misma y por tanto si tenemos en cuenta la configuración de dos GPU se haya cuadriplicado en las AMD Instinct MI200 respecto a sus antecesoras.
Infinity Fabric 3.0 en AMD Instinct MI200
Desde AMD han mejorado su interfaz de intercomunicación Infinity Fabric en su tercera generación, no olvidemos que esta es utilizada para la intercomunicación interna y externa entre los diferentes componentes en las CPU, GPU y APU de la compañía, permitiendo combinar la potencia de varias CPU y GPU.
El Infinity Fabric de la anterior generación de las AMD Instinct forzaban a que la comunicación CPU-GPU se hiciera de manera no coherente a través del puerto PCI Express 4.0, además de limitar la cantidad de GPU conectadas entre sí a cuatro.
¿Cuáles son las novedades? En primer lugar, el uso de una GPU Dual permite intercomunicar hasta 8 de ellas. Como segundo punto tenemos que por primera vez el direccionamiento entre la CPU y GPU está unificado al ser totalmente coherente y todo gracias a la adopción del estándar CXL 1.1.