Microsoft ha llegado al Hot Chips 2020 con información de la unidad de procesamiento acelerada (APU) que ha desarrollado AMD para ella, y que tuvo de nombre en clave proyecto Scarlett durante su desarrollo. Es un diseño algo especial aunque integra sobre todo la tecnología de AMD con algunos extras que necesita Microsoft para su disposición de memoria, control de vídeo o el almacenamiento. Gran parte de la información mostrada a continuación no es nueva, pero es una recopilación de lo que ha ido dando Microsoft en los últimos meses.

La compañía parte de las generalidad de este procesador. La pastilla que incluye tiene tan solo 360.4 mm2. El procesador en sí tiene un formato de encapsulado BGA —matriz de rejilla de bolas; tiene bolitas de soldadura por contactos, resumiéndolo— con un tamaño de 52.5 mm × 52.5 mm y en total son 2963 bolas. La pastilla está fabricada con un proceso de 7 nm+ de TSMC, e incluye 15 300 millones de transistores, un 50 % más que el Navi 10, en un tamaño aproximadamente un 50 % superior ya que ese chip tiene un tamaño de 251 mm2.

xbox-series-x-slide03.jpg
Vista interna del chip Proyecto Scarlett.

En ese espacio incluye dos complejos de núcleos (CCX) de cuatro núcleos cada uno para un total de ocho núcleos de tipo Zen 2 funcionando a 3.8 GHz, y cada CCX tiene 4 MB de caché de nivel 3 propio, y cada núcleo los habituales 512 KB de nivel 2. La parte de unidad gráfica (GPU) tiene un total de 56 unidades de cómputo (28 de tipo dual), pero solo hay 52 activas, probablemente por temas de rendimiento de producción. Puesto que es la mayor parte del chip, también es en la que más probablemente haya defectos en su fabricación. Eso son 3328 sombreadores procesadores de flujos de datos en nomenclatura de AMD— funcionando hasta a 1.82 GHz con un potencia de cómputo máxima de 12 TFLOPS en coma flotante de precisión simple o de 32 bits (FP32).

Los 16 GB de memoria de tipo GDDR6 a 14 GHz está dividida en dos, lo cual ha resultado extraño a propios y ajenos por la limitación en el ancho de banda máximo de la GPU. Hay 10 GB dedicados para la GPU lo que da 560 GB/s con un bus de 320 bits, que supone una mejora en torno al 25 % respecto al Navi 10 de la RX 5700 XT para aproximadamente un 23 % más de rendimiento total —12 TFLOPS de Scarlett frente a 9.75 TFLOPS del Navi 10—.

A estas arquitecturas les sienta bien cuanto más ancho de banda mejor, aunque Microsoft confía en otras técnicas de compresión de memoria para compensar, y es donde entra en juego la arquitectura Velocity para el movimiento de información entre el almacenamiento y el procesador. Microsoft también menciona medidas de seguridad de la memoria como cifrado y comprobación de integridad por regiones para evitar manipulaciones.

xbox-series-x-slide09.jpg

Esta GPU es capaz de ejecutar DirectX 12 Ultimate, que es la primera realmente bien preparada para trazado de rayos en tiempo real y otras características recientes del mundo de la generación de gráficos por computadora. En ello incluyo tecnologías de las que ya he hablado, como la tasa de sombreado variable que permite definir la rasterización de regiones a menor resolución para ganar rendimiento, el sombreado en malla —que por cierto Nvidia ejecuta en los núcleos tensoriales— o la transmisión con muestreo por realimentación (sampler feedback streaming, o SFS). En otro artículo desgranaba lo que es esto último, el por qué de su nombre —no es algo que suena raro en español y muy bonito en inglés aunque alguien no tenga idea de qué implica—, y qué ventajas tiene.

La arquitectura Velocity de la Xbox Series X está orientada a reducir la necesidad de memoria GDDR6 al permitir la carga solo de cachos de texturas, pero también implica tener una unidad de estado sólido rápida, y en este caso es PCIe 3.0 ×4. La GDDR6 es cara, por lo que como cualquier otra compañía de tarjetas gráficas se intenta reducir su uso y el ancho de banda necesario para funcionar. La arquitectura Velocity al final permite hacer uso de la SSD de la Xbox Serie X como una alternativa, lo que ahorra dinero —Microsoft habla de un coste 33 veces superior del coste del giga de RAM frente al de NAND—. Menciona que el equipo de Xbox ha estado planeando esta arquitectura desde 2007. ¿Más vale tarde que nunca?

Microsoft también menciona en las transparencias el trazado de rayos, y asegura que Scarlett tiene unidades dedicadas para el trazado de rayos aunque integradas en los sombreadores, por lo que en parte se solventa una gran incógnita. Son unidades de cálculo de rayo contra delimitador (ray-box) y rayo contra triángulo (ray-triangle) que pueden funcionar en paralelo con el recorrido de la jerarquía de delimitadores de volúmenes (BVH, bounding volume hierarchy), el sombreado, y otros. No da algo directamente comparable con la arquitectura Turing de Nvidia, pero indica que puede procesar 380 gigaoperaciones de incidencias de rayo en delimitadores y de 95 gigaoperaciones de incidencias de rayos en triángulos por segundo. No sé si es mucho o poco porque dependería del número de rebotes que dé un rayo en su recorrido, más cómo calcule los rebotes indirectos.

Microsoft avisa que el rendimiento variará en función del ancho de banda disponible, el número de nodos o triángulos visitados por rayo, etc. Lo que sí indica Microsoft es que esas unidades ocupan un área mínima pero mejora el rendimiento en trazado de rayos un 300 % a 1000 %. Esas unidades son un poco más genéricas que este cálculo de incidencias ya que también sirven para inferencias de aprendizaje automático, que es de las áreas fundamentales de la inteligencia artificial. Por tanto habría que matizar lo de «unidades dedicadas» por «unidades aritmético-lógicas para tipos de datos especiales de IA», lo cual es bastante más común en los sombreadores. Eso lo usará Microsoft en la Xbox Serie X para hacer, por ejemplo, reescalados; Nvidia usa los núcleos tensoriales para ello.

xbox-series-x-slide08.jpg

PD: Microsoft, mueren gatitos cuando tu gente no numera las transparencias, ¿lo sabías?

Vía: Tom's Hardware, Videocardz.