RDNA (microarquitectura)
# RDNA (microarquitectura)

RDNA (Radeon DNA) es una microarquitectura de unidad de procesamiento de gráficos (GPU) y una arquitectura de conjunto de instrucciones que la acompaña desarrollada por AMD. Es el sucesor de su conjunto de microarquitectura/instrucciones Graphics Core Next (GCN). La primera línea de productos con RDNA fue la serie de tarjetas de video Radeon RX 5000, lanzada el 7 de julio de 2019. La arquitectura también se utiliza en productos móviles. Está fabricado con los chips gráficos N7 FinFET de TSMC que se utilizan en la serie Navi de tarjetas gráficas AMD Radeon.

La segunda iteración de RDNA se presentó por primera vez en las consolas PlayStation 5 y Xbox Series X/S. Ambas consolas utilizan una solución gráfica personalizada basada en RDNA 2 como base para su microarquitectura de GPU. En PC, RDNA 2 se incluye en la serie de tarjetas de video Radeon RX 6000, que se lanzó por primera vez en noviembre de 2020. RDNA 2 también se incluye en Exynos 2200 de Samsung como arquitectura de gráficos.

La tercera iteración de RDNA se anunció el 3 de noviembre de 2022 y se presentará en la serie Radeon RX 7000 de tarjetas gráficas móviles y de escritorio para consumidores.

## RDNA 1

RDNA 1 (también RDNA1) es la primera implementación de la microarquitectura RDNA y es la sucesora de la serie Radeon RX Vega. El lanzamiento se produjo el 7 de julio de 2019.

### Arquitectura

La arquitectura presenta un nuevo diseño de procesador, aunque los primeros detalles publicados en el discurso de apertura de Computex de AMD insinúan aspectos de la arquitectura Graphics Core Next (GCN) anterior que están presentes con fines de compatibilidad con versiones anteriores, lo cual es especialmente importante para su uso (en forma de RDNA 2) en las principales consolas de juegos de novena generación (Xbox Series X/S y PlayStation 5) para preservar la compatibilidad nativa con sus bibliotecas de juegos de octava generación preexistentes diseñadas para GCN. Cuenta con una jerarquía de caché de varios niveles y una canalización de renderizado mejorada, con soporte para memoria GDDR6.

Empezando por la arquitectura en sí, uno de los mayores cambios para RDNA es el ancho de un frente de onda, el grupo fundamental de trabajo. GCN en todas sus iteraciones tenía 64 subprocesos de ancho, lo que significa que 64 subprocesos se agruparon en un solo frente de onda para su ejecución. RDNA reduce esto a un ancho nativo de 32 subprocesos. Al mismo tiempo, AMD ha ampliado el ancho de sus SIMD de 16 ranuras a 32 (también conocido como SIMD32), lo que significa que el tamaño de un frente de onda ahora coincide con el tamaño de SIMD.

RDNA también introduce sombreadores primitivos de trabajo. Si bien la función estaba presente en el hardware de la arquitectura Vega, era difícil obtener un aumento del rendimiento en el mundo real y, por lo tanto, AMD nunca la habilitó. Los sombreadores primitivos en RDNA están controlados por el compilador.

El controlador de pantalla en RDNA se ha actualizado para admitir Display Stream Compression 1.2a, lo que permite la salida en 4K a 240 Hz, HDR 4K a 120 Hz y HDR 8K a 60 Hz.

### Conjunto de instrucciones

El sitio web GPUOpen de AMD alberga un documento PDF que tiene como objetivo describir el entorno, la organización y el estado del programa de los dispositivos RDNA. Detalla el conjunto de instrucciones y los formatos de microcódigo nativos de esta familia de procesadores que son accesibles para programadores y compiladores.

### Diferencias entre GCN y RDNA

Hay cambios en la arquitectura que afectan la programación del código:

* Problema de instrucción de ciclo único:
   * GCN emitió una instrucción por onda una vez cada 4 ciclos.
   * RDNA emite instrucciones cada ciclo.
* Onda32:
   * GCN usó un tamaño de frente de onda de 64 subprocesos (elementos de trabajo).
   * RDNA admite tamaños de frente de onda de 32 y 64 subprocesos.
* Procesadores de grupos de trabajo:
   * GCN agrupó el hardware de sombreado en "unidades de cómputo" (CU) que contenían ALU escalares y ALU vectoriales, LDS y acceso a la memoria. Una CU contiene 4 SIMD16 que comparten una ruta a la memoria.
   * RDNA introdujo el "procesador de grupo de trabajo" ("WGP"). El WGP reemplaza a la unidad de cómputo como la unidad básica de computación/hardware de cómputo de shaders. Un WGP abarca 2 CU. Esto permite que se dirija significativamente más potencia de cómputo y ancho de banda de memoria a un solo grupo de trabajo. En RDNA, 1 CU es la mitad de un WGP.

### Chips

GPU discretas:

* Navi 10 encontrado en las tarjetas gráficas Radeon RX 5600, Radeon RX 5600 XT, Radeon RX 5600M, Radeon RX 5700, Radeon RX 5700M, Radeon RX 5700 XT, Radeon Pro 5700, Radeon Pro 5700 XT, Radeon Pro W5700X y Radeon Pro W5700
* Navi 12 encontrado en la tarjeta gráfica de la marca Radeon Pro V520, la tarjeta gráfica móvil de la marca Radeon Pro 5600M y la tarjeta de minería BC-160 para criptomonedas
* Navi 14 encontrado en Radeon RX 5300, Radeon RX 5300 XT, Radeon Pro 5300, Radeon Pro W5300, Radeon RX 5500, Radeon RX 5500 XT, Radeon Pro 5500, Radeon Pro 5500 XT y Radeon Pro W5500, tarjetas gráficas de marca; Tarjetas gráficas móviles de la marca Radeon RX 5300M, Radeon Pro 5300M, Radeon Pro W5300M, Radeon RX 5500M, Radeon Pro 5500M y Radeon Pro W5500M

## RDNA 2

RDNA 2 (también RDNA2 ) es el sucesor de la microarquitectura RDNA. Se anunció públicamente por primera vez a principios de 2020 con un lanzamiento previsto para el cuarto trimestre de 2020. Según declaraciones de AMD, RDNA 2 sería un " refresco " de la arquitectura RDNA.

Se hizo pública más información sobre RDNA 2 en el Día del analista financiero de AMD el 5 de marzo de 2020. AMD afirmó que proporcionaría una mejora del rendimiento por vatio del 50 % con respecto a RDNA, con aumentos en la velocidad del reloj y las instrucciones por reloj. Las características adicionales confirmadas por AMD incluyen trazado de rayos acelerado por hardware en tiempo real, "Infinity Cache", sombreadores de malla, retroalimentación de muestra y sombreado de tasa variable. La compañía anunció que RDNA 2 se usaría en consolas de juegos y tarjetas gráficas para PC de próxima generación con el nombre en código "Navi 2X" y también apodado como "Big Navi".

AMD presentó la serie Radeon RX 6000, sus tarjetas gráficas RDNA 2 de próxima generación en un evento en línea el 28 de octubre de 2020. La alineación inicialmente constaba de RX 6800, RX 6800 XT y RX 6900 XT. Las RX 6800 y 6800 XT se lanzaron el 18 de noviembre de 2020 y las RX 6900 XT se lanzaron el 8 de diciembre de 2020. Otras variantes, incluida una serie Radeon RX 6700 (XT) basada en Navi 22, lanzada más tarde el 18 de marzo de 2021.

El 31 de mayo de 2021, AMD lanzó la serie de GPU RX 6000M diseñadas para computadoras portátiles. Estos incluyen el RX 6600M, RX 6700M y RX 6800M. Estos estuvieron disponibles a partir del 1 de junio de 2021.

El 1 de junio de 2021, la directora ejecutiva de AMD, la Dra. Lisa Su, y el director ejecutivo de Tesla, Inc., Elon Musk, confirmaron que los sistemas de entretenimiento de los nuevos Model S y Model X de Tesla funcionan con RDNA 2. También se anunció que la misma microarquitectura se usará para un próximo Samsung Exynos SoC insignia, presentado más tarde en enero de 2022 como Exynos 2200, utilizando una GPU Xclipse 920 personalizada con 3 unidades de cómputo.

Se incluye una GPU integrada RDNA 2 con 2 unidades de cómputo en la matriz de E/S de las CPU de la serie Ryzen 7000 basadas en Zen 4 de AMD. Según AMD, los gráficos RDNA 2 integrados en Ryzen 7000 no están destinados a juegos y, en cambio, están destinados a fines de diagnóstico y ofrecen capacidades de codificación y decodificación de video.

### Chips

GPU discretas:

* Navi 21
* Navi 22
* Navi 23
* Navi 24

Integrado en APU/CPU:

* Rembrandt (como los modelos "Radeon 660M" y "Radeon 680M" que se encuentran en las APU móviles de la serie Ryzen 6000)
* Raphael (como la iGPU de la marca "Radeon Graphics" que se encuentra en las CPU de la serie Ryzen 7000)
* Mendocino (como el modelo "Radeon 610M" que se encuentra en las APU móviles de la serie Ryzen 7020)
* Rembrandt R (como los modelos "Radeon 660M" y "Radeon 680M" que se encuentran en las APU móviles de la serie Ryzen 7035))
* Dragon Range (como el modelo "Radeon 610M" que se encuentra en las APU móviles de la serie Ryzen 7045)

### Uso en consolas de videojuegos

Las configuraciones personalizadas de la microarquitectura de gráficos RDNA 2 se utilizan en las consolas PlayStation 5 de Sony, Xbox Series X y Series S de Microsoft, con ajustes patentados y diferentes modificaciones de GPU en la implementación de cada sistema. Valve anunció el 15 de julio de 2021 que su Steam Deck contaría con la arquitectura RDNA 2. Steam Deck se lanzó en febrero de 2022.

## RDNA 3

RDNA 3 (también RDNA3) es el sucesor de la microarquitectura RDNA 2 y se proyectó para un lanzamiento en el cuarto trimestre de 2022 según la hoja de ruta de GPU para juegos de AMD. En un evento de revelación del 29 de agosto para las CPU de la serie Ryzen 7000, la directora ejecutiva de AMD, Lisa Su, se burló de RDNA 3 y reveló que utilizaría chipsets integrados en el nodo N5 de TSMC. El 19 de septiembre de 2022, Sam Naffziger, actual vicepresidente sénior de AMD, declaró en una publicación de blog que las mejoras realizadas en la microarquitectura RDNA 3 permiten ganancias de rendimiento y eficiencia considerables, con un aumento estimado del 50 % en el rendimiento por vatio en comparación con a la microarquitectura RDNA 2. Además, la arquitectura RDNA 3 presenta la próxima generación de Infinity Cache, una canalización de gráficos modificada, administración de energía adaptativa y unidades de cómputo rediseñadas, lo que lleva a una mejora general sólida en el rendimiento de rasterización y trazado de rayos con respecto a la arquitectura de consumo anterior.

El 3 de noviembre de 2022, AMD presentó las tarjetas gráficas RX 7900 XTX y RX 7900 XT, basadas en la microarquitectura RDNA 3. Estas son las primeras GPU comerciales que se basan en un diseño de módulo multichip (MCM).

### Chips

GPU discretas:

* Navi 31 encontrado en las tarjetas gráficas Radeon RX 7900 XT y Radeon RX 7900 XTX
* Navi 33 encontrado en las tarjetas gráficas móviles de la marca Radeon RX 7600S, Radeon RX 7600M, Radeon RX 7600M XT y Radeon RX 7700S

Integrado en APU/CPU:

* Phoenix (como los modelos "Radeon 760M" y "Radeon 780M" que se encuentran en las APU móviles de la serie Ryzen 7040)

## Comparación de chips RDNA

| Microarquitectura | RDNA 1 | RDNA 1 | RDNA 1 | RDNA 2 | RDNA 2 | RDNA 2 | RDNA 2 | RDNA 3 | RDNA 3 |
| - | - | - | - | - | - | - | - | - | - |
| Chip | Navi 10 | Navi 12 | Navi 14 | Navi 21 | Navi 22 | Navi 23 | Navi 24 | Navi 31 | Navi 33 |
| Nombre en clave | Gaming | ? | Fighter | Sienna Cichlid | Navy Flounder | Dimgrey Cavefish | Beige Goby | Plum Bonito | Hotpink Bonefish |
| Fab | TSMC N7 | TSMC N7 | TSMC N7 | TSMC N7 | TSMC N7 | TSMC N7 | TSMC N6 | TSMC N5 (GCD) TSMC N6 (MCD) | TSMC N6 |
| Paquete | Monolithic | Monolithic | Monolithic | Monolithic | Monolithic | Monolithic | Monolithic | MCM GCD + 6×MCD | Monolithic |
| Tamaño del chip $(mm^2)$ | 251 | Desconocido | 158 | 520 | 335 | 237 | 107 | ~531 | 204 |
| Tamaño del GCD $(mm^2)$ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | 306 | N/a |
| Tamaño del MCD $(mm^2)$ | N/A | N/A | N/A | N/A | N/A | N/A | N/A | 37.5 | N/a |
| Transistores (mil millones) | 10.3 | Desconocido | 6.4 | 26.8 | 17.2 | 11.06 | 5.4 | 58.0 | 13.3 |
| Densidad de transistores $(MTr/mm^2)$ | 41.0 | Desconocido | 40.5 | 51.5 | 51.3 | 46.7 | 50.5 | 109.2 (MCM) 132.4 (GCD) | 65.2 |
| Motores de sombreado | 2 | 2 | 1 | 4 | 2 | 2 | 1 | 6 | 2 |
| Matrices de sombreadores | 4 | 4 | 2 | 8 | 4 | 4 | 2 | 12 | 4 |
| Workgroup processors | 20 | 20 | 12 | 40 | 20 | 16 | 8 | 48 | 16 |
| Unidades de cómputo | 40 | 40 | 24 | 80 | 40 | 32 | 16 | 96 | 32 |
| Stream processors | 2560 | 2560 | 1536 | 5120 | 2560 | 2048 | 1024 | 6144 | 2048 |
| Unidades de mapeo de texturas | 160 | 160 | 96 | 320 | 160 | 128 | 64 | 384 | 128 |
| Unidades de salida de renderizado | 64 | 64 | 32 | 128 | 64 | 64 | 32 | 192 | 64 |
| Aceleradores de RT | N/A | N/A | N/A | 80 | 40 | 32 | 16 | 96 | 32 |
| Aceleradores de AI | N/a | N/a | N/a | N/a | N/a | N/a | N/a | 192 | 64 |
| Cache L0 (KB) | 32 por Procesador Workgroup (WGP) | 32 por Procesador Workgroup (WGP) | 32 por Procesador Workgroup (WGP) | 32 por Procesador Workgroup (WGP) | 32 por Procesador Workgroup (WGP) | 32 por Procesador Workgroup (WGP) | 32 por Procesador Workgroup (WGP) | 64 por WGP | 64 por WGP |
| Caché L1 (KB) | 128 por Shader array (SA) | 128 por Shader array (SA) | 128 por Shader array (SA) | 128 por Shader array (SA) | 128 por Shader array (SA) | 128 por Shader array (SA) | 128 por Shader array (SA) | 256 por SA | 256 por SA |
| Caché L2 (MB) | 8 | 4 | 2 | 4 | 3 | 2 | 1 | 6 | 2 |
| Caché L3 (MB) | N/a | N/a | N/a | 128 | 96 | 32 | 16 | 96 | 32 |
| Tipo de memoria | GDDR6 | HBM2 | GDDR6 | GDDR6 | GDDR6 | GDDR6 | GDDR6 | GDDR6 | GDDR6 |
| Bus de memoria (bits) | 256 | 2048 | 128 | 256 | 192 | 128 | 64 | 384 | 128 |
| Display Core Next | 2.0.0 | 2.0.0 | 2.0.0 | 3.0.0 | 3.0.0 | 3.0.2 | 3.0.3 | 3.2.0 | 3.2.1 |
| Video Core Next | 2.0.0 | 2.0.2 | 2.0.2 | 3.0.0 | 3.0.0 | 3.0.16 | 3.0.33 | 4.0.0 | 4.0.4 |
| Lanzamiento | 7 de julio de 2019 | 15 de junio de 2020 | 7 de octubre de 2019 | 18 de noviembre de 2020 | 18 de marzo de 2021 | 31 de mayo de 2021 | 2 de enero de 2022 | 13 de diciembre de 2022 | 4 de enero de 2023 |
| Introducido con | Radeon RX 5700Radeon RX 5700 XT | Radeon Pro 5600M | Radeon RX 5500Radeon RX 5500M | Radeon RX 6800Radeon RX 6800 XT | Radeon RX 6700 XT | Radeon RX 6600M | Radeon RX 6300MRadeon RX 6500M | Radeon RX 7900 XTRadeon RX 7900 XTX | Radeon RX 7600SRadeon RX 7600MRadeon RX 7600M XTRadeon RX 7700S |
