Intel muestra el futuro de sus CPU, GPU y aceleradores de IA en una patente con apilamiento vertical 3D, ¡incluida la caché L3!
Si la semana pasada hablábamos de algo realmente interesante que ya se ha confirmado con AMD y su nueva caché vertical 3D, así como los tres modos de entrega de energía BPR, hoy toca hablar de su gran rival en el mercado Intel. Y es que una patente que ha ido tomando forma durante dos años ahora está completa y fue aprobada hace un mes, la cual vamos a tratar dado el esfuerzo de los azules y el detalle de la misma en sus 98 páginas. Lo que vamos a ver ahora es la intención y diseño que tiene Intel para sus CPU y GPU con apilamiento vertical 3D mediante Base Tile con caché L3 donde las opciones son casi infinitas realmente.
Y es que la patente es una auténtica locura que para desgranarla necesitaríamos días por lo densa y el detalle con el que se muestra todo. Lo que ha presentado y publicado Intel es algo, en concepto, que ya hemos visto en parte con AMD, pero lo hace de una forma que puede ser aplicado a una cantidad de productos absolutamente brutales, lo cual es radicalmente distinto a cualquier cosa que habíamos visto antes.
El problema de no definir correctamente, y con el paso del tiempo cambiar, los conceptos de Chiplet y Tile
La patente está denominada, muy acertadamente, como "Desagregación de la arquitectura del sistema en un chip "SoC", y la preview a modo de resumen dice lo siguiente:
Las realizaciones descritas en el presente documento proporcionan técnicas para desagregar una arquitectura de un circuito integrado de sistema en chip (SoC) en múltiples chiplets distintos que se pueden empaquetar en un chasis común.
En una realización, una unidad de procesamiento gráfico o un procesador paralelo se compone de diversos chiplets de silicio que se fabrican por separado. Un chiplet es un circuito integrado empaquetado, al menos parcialmente, y de forma distinta que incluye unidades de lógica distintas que se pueden ensamblar con otros chiplets en un paquete más grande. Se puede ensamblar un conjunto diverso de chiplets con lógica de núcleo IP diferente en un único dispositivo.
Aunque Intel habla de chiplets porque arrastra la patente desde hace años, lo que realmente veremos una vez se presenten los productos serán Tiles. ¿Por qué? Pues porque todo gira en torno a un Base Tile, pero no es el único motivo, y esto es importante tenerlo claro como concepto general a tratar para el futuro, al menos al hablar de Intel.
Chiplet es un concepto que se usa cuando se habla de un chip independiente que se combina con otros dentro de un diseño para formar una CPU o GPU al completo, mientras que Tile es un bloque funcional para dicho diseño dentro de un concepto monolítico o modular. Hay otra cosa a saber aparte de estas definiciones que, por decirlo finamente, ha sido "modificado" sin previo aviso por Intel en sus últimas diapositivas.
Y es que otro de los requisitos de un Tile como tal era el hecho de que todos ellos tenían que estar fabricados en el mismo nodo, mientras que los chiplets podían hacerlo en nodos distintos. Con Meteor Lake, Lunar Lake y Arrow Lake esto saltó por los aires como todos sabemos, y por tanto, las diferencias son estructurales y como concepto general.
La definición será de Tile por lo dicho, y por usar Base Tile, aunque Intel diga que son chiplets como tal, y aquí la última definición a comprender: la interconexión. Los chiplets se conectan entre ellos mediante un Fabric usando el Interposer de turno o sustrato, dependiendo de la tecnología, mientras que los Tiles usan el Base Tile para ello, lo cual deja más claro que el término a usar aquí será ese: Tiles. Aclarado esto, al lío.
Intel muestra su patente de CPU y GPU con apilamiento vertical 3D que incluirá caché L3 y varios tipos de DRAM
Solo nos vamos a centrar en partes importantes, porque si no esto sería eterno, pero lo que se ve son múltiples escenarios en esta patente. El concepto general es el de variedad, es decir, poder crear una cantidad de conceptos increíble para CPU y GPU, con una cantidad de opciones casi infinita, puesto que se puede agregar cualquier elemento a la ecuación.
Simplificando la idea y para que tengamos una imagen mental, Intel quiere el poder de crear desde una CPU con su GPU al estilo Arrow Lake o Lunar Lake, hasta un acelerador de IA tipo Instinct de AMD, pasando por el concepto de NVIDIA y sus Grace Superchip, todo, al mismo tiempo, con solo cambiar diseños y en una sola patente, de ahí su densidad.
Se podría decir que la palabra es MODULARIDAD, en mayúsculas. Bien, entendido el concepto clave, veamos diseños distintos y tramas destacadas de la barbaridad que hay.
El primero a tratar es la Figura 3C, la cual revela cuatro grupos distintos: CPU, memoria del sistema, GPU y I/O Devices. Lo importante de esta figura es que se centra en la GPU.
Como vemos, el bloque 380 muestra el controlador de memoria, el I/O y dentro de este el IOMMU (Input/Output Memory Management Unit). Vamos a centrarnos en el bloque 365A, denominado inteligentemente como Multi-Core Group, o MCG para abreviar. Como vemos, es un bloque que integra su Scheduler y Dispatcher, archivos de registro, Cores, Tensor Cores, Ray Tracing Cores, L1 compartida y un motor de Texturas.
Este bloque no es único, sino que en el diagrama hay muchos más, solo que nos detalla este en concreto como concepto interno, es decir, las unidades que hay en cada uno de ellos. Lo que se refleja es que estos serán Tiles, para ser específicos, varias GPU dentro de un sustrato, donde todos los MCG comparten la L2.
En otras palabras y simplificando mucho: es una GPU MCM compuesta de varias GPU en Tiles. Es como si ahora Intel coge la GPU de Lunar Lake y pone muchos Tiles iguales para crear una GPU más grande hecha de GPU independientes más pequeñas, de ahí la cantidad de MCG que se ven, donde hay un número indeterminado N de ellas, es decir, no hay límite para poner más o menos.
La figura 4A muestra que el concepto de máximo rendimiento será increíble
Todo tiene un límite, en este caso físico. El concepto de la figura 4A es algo así como el Grace Superchip de NVIDIA, pero en un solo sustrato al estilo Instinct de AMD. O lo que es igual, dos CPU multinúcleos, posiblemente también creadas con Tiles unidas a cuatro GPU hechas a base de Tiles de GPU independientes menores.
Es rizar el rizo de lo que se ha visto hasta ahora en lo que podríamos llamar un 2+4 (luego veremos 2+6). Dicho de otro modo, 2 CPU y 4 GPU en un solo "acelerador", o como Intel lo denominó en su momento antes de cargarse el término, una XPU, la sumatoria de CPU y GPU.
La figura 4B explica un poco más en detalle todo lo que hemos visto hasta ahora, en lo que creemos que será un acelerador de IA, posiblemente una versión ultra avanzada de Falcon Shores, la cual Intel mató de XPU para convertirla en GPU a secas, y parece que vuelve a las andadas con algo mucho mejor.
Lo interesante, explicado todo esto, es que tanto la parte de la CPU como la parte de la GPU tienen acceso independiente a la memoria RAM, que como veremos, puede estar en el mismo sustrato y podría ser tanto DDR5 o DDR6, como HBM4 o GDDR7, las posibilidades son gigantescas y al gusto, de ahí que sean independientes los accesos. Además, CPU y GPU están conectadas por lo que Intel denomina como INTF, o Intel Fabric, un bus de alta velocidad interno del que poco se sabe, pero que sería algo así como NVLink de NVIDIA.
Intel va a por Apple mejorando el concepto de Memoria Unificada
Como siempre he dicho, dicho concepto lo fijó Apple porque quiso, ya que ni Intel, ni AMD ni NVIDIA tienen claro qué es la Memoria Unificada como tal, puesto que UMA (Unified Memory Architecture) puede ser tratada de muchas maneras y conceptos. Lo que vamos a ver es una vuelta de tuerca a lo que presenta Apple con sus chips M, pero a lo bestia. Para entenderlo, vamos con la figura de justamente más arriba, la 4F, a desglosarla por términos y conceptos de una forma simplificada y menos técnica para comprender qué pretende Intel.
- GPU (410, 411, 412, etc.): Se muestran varias GPU que forman parte del sistema, cada una con su propia MMU (Memory Management Unit). Estas GPUs están diseñadas para trabajar en conjunto y optimizar los gráficos de alto rendimiento, en principio, y si no estamos equivocados, mediante enlaces de alta velocidad Fabric.
- MMU (439A, 439B, 439C, etc.) y Bias/Coherence Controller: Cada GPU cuenta con una MMU encargada de gestionar la traducción de direcciones de memoria. Además, el controlador de coherencia de sesgo (Bias/Coherence Controller) asegura que las CPU y GPU mantengan la coherencia de datos entre ellas, permitiendo que accedan a datos compartidos sin generar inconsistencias.Esto es fundamental en entornos de memoria unificada donde diferentes procesadores pueden leer y escribir en las mismas ubicaciones de memoria. Esto no es más que el concepto de Apple, solo que aplicado al grupo de las GPU y CPU en exclusiva.
- Processor Memory (401 y 402) y GPU Memory (420 a 423): Estas representan la memoria asignada específicamente para el procesador y para las distintas GPU mencionadas arriba. Entendemos que Intel habla de L0, L1, L2 y L3 como conceptos de memoria caché para cada CPU y GPU de forma independiente entre ellas, de ahí que haya distintos bloques.
- Unified Memory: Este bloque representa el concepto de memoria unificada y compartida donde tanto las CPU de múltiples núcleos como las GPU pueden trabajar sobre el mismo espacio de memoria (parcial, ahora veremos el porqué). Esto mejora el rendimiento en tareas donde la CPU y la GPU deben intercambiar datos rápidamente.La memoria unificada permite que ambos tipos de procesadores accedan y compartan datos de manera eficiente, lo cual elimina la necesidad de copiar datos entre diferentes regiones de memoria. Esto es especialmente útil en aplicaciones de gráficos y computación intensiva como renderizado, o mismamente IA y DL.
El problema que tiene Apple con la UMA y que no tendrá Intel con este nuevo diseño
Aquí hay que pararse un momento y pensar, ¿por qué en el diagrama la Memoria Unificada no se especifica como Memoria del Sistema tal cual se ha visto en otras figuras? Porque Intel no incluye en esa Memoria Unificada a la DRAM como sí que hace Apple.
¿El motivo? Lo hemos explicado antes, distintos tipos de DRAM según las necesidades del diseño que se vaya a crear. Por ejemplo, una APU para PC podría tener GDDR7 y DDR5 en el sustrato, que básicamente sería como crear una CPU a lo Lunar Lake, pero añadiendo la primera, puesto que ya segunda ya existe en el diseño original.
Pero para que eso sea posible y el rendimiento sea óptimo, CPU y GPU deben tener una "bolsa común de memoria compartida", que es precisamente esa UMA, esa arquitectura de memoria compartida entre ellas, donde DDR5 y GDDR7 son transparentes para cada una, pero no entre ellas hasta que los datos lleguen a esa "bolsa". Eso lo pone en referencia la figura 4B muy claramente. Este diseño tiene todas las ventajas del de Apple, pero ninguna desventaja.
Apple sufre cuando CPU y GPU están cerca del 100% y el rendimiento va cayendo conforme esa UMA va colapsando al no poder transmitir a tiempo con la DRAM toda la información al procesador y gráfica al mismo tiempo. Lo que para tareas cotidianas o cargas de uno y otro componente es una ventaja, porque evitas copiar datos en caché y rebajas latencia al ser un tipo de memoria no inclusiva, para situaciones como juegos muy exigentes con resoluciones muy altas es un problema.
Con el diseño de Intel tienes memoria unificada para CPU y GPU a nivel de caché, pero no de DRAM pese a estar presente en el procesador y en varios tipos, es decir, no colapsará la GPU porque tendrá su HBM o GDDR, y la CPU tampoco lo hará porque tendrá en exclusiva su DRAM.
Otras curiosidades de la patente
Como es enorme, vamos a ir dando pequeños saltos tocando cosas interesantes a tener en cuenta, prácticamente individuales, aunque lógicamente están de una manera u otra relacionadas, pero no le vamos a buscar los tres pies al gato como hasta ahora. Solamente vamos a informar sobre novedades puntuales a partir de este momento.
En primer lugar, Intel denomina a la interconexión entre las distintas GPU dentro del sustrato como P2P GPU Links (816) donde todas enviarán la información a la CPU mediante un Host Interface Switch (804), que será algún tipo de PHY de nueva factura por el alto ancho de banda que debe de soportar para tener en liza nada menos que 4 GPU al mismo tiempo interconectadas entre ellas (figura 8).
La figura 14 tiene mucha miga, porque si bien a la derecha se muestra una CPU tipo Arrow Lake como concepto general que podemos tener fresco, hay dos matices: la caché L3 es un bloque independiente, y el controlador de memoria es exclusivo. Por tanto, lo que se entiende, es que habrá Caché Vertical 3D como un Tile independiente y que el IMC será una parte crucial para CPU y GPU por primera vez, por no olvidar que los archivos de registro también están fuera.
¿Qué podemos entender aquí? Que APX tendrá su propio bloque actualizable como tal, al nivel de la NPU como acelerador. Esto en parte lo sabemos por la figura 15, donde se aprecia la caché compartida para los Cores (1506), la cual enlaza con el Ringbus (1512)
La figura 18 muestra cómo funcionará la GPU a base de pequeñas GPU, en este caso hasta 6, cada una especificada como 1801"x".
Cada una tiene sus Arrays de Execution Units, su TDIC (Texture/Display/Image Cache), su SLM (Shared Last Memory) y en definitiva, todo lo que tiene una iGPU actual.
Las 6 tienen esa memoria compartida y unificada, donde también vemos las funciones de lógica, geometría y adicionales. Todo se gestiona con 4 motores principales: Geometría, SOC, Microcontrolador y Media. Para ver su funcionamiento y su Pipeline completa, tenéis que ir a la figura 21.
Así se verán las nuevas CPU y GPU de Intel con apilamiento vertical 3D también en la L3 y DRAM
Visto todo lo importante o relevante de la parte lógica, vamos a ver la parte física. ¿Cómo se va a conectar todos estos elementos? ¿Cómo piensa Intel unir físicamente hablando tanta CPU, GPU y distintos tipos de memoria?
La figura 28A lo explica detenidamente. Como vemos, tenemos chiplets, que serán Tiles por lo explicado al principio, un llamado Media Chiplet y los chiplets de memoria. En la base tendremos un Base Die, es decir, el Base Tile, seguramente fabricado en Intel 3, que es el nodo que se diseñó para este concepto y del cual parte el diseño del Base Tile actual de 22 nm que fabrica Intel.
Dicho Base Die es gran parte de la clave de que esto pueda hacerse, y será creado con Foveros Direct 3D, no sabemos si en su primera generación o la segunda, aunque viendo lo avanzado podría ser 2ª sin problema. Los elementos son los comunes excepto por los llamados L3 Banks.
Esto es lo definitorio, porque dicho Base Tile será el que permita mediante estas conexiones de hiper alta velocidad el hecho de que Intel pueda poner Caché vertical sobre el Base Tile. Es decir, Intel no va a necesitar poner la caché L3 adicional sobre el Compute Tile, sino que lo visto con Arrow Lake-S y su Ringbus y caché L3 común para todos los tipos de núcleos es el paso previo para estos L3 Banks.
Simplificando el concepto: el Tile no estará puesto encima o debajo como hace AMD, sino que es horizontal, es un Tile más a refrigerar por el IHS, al igual que lo será la HBM, GDDR o DDR de turno. Resumiendo, son todo Tiles horizontales conectadas verticalmente en el Base Tile, por lo que el Fabric que se ve en dicha figura 28A, al igual que el Dispatch, y SCHED, es básicamente un Tile de gestión de datos y energía.
Esto quiere decir que el Base Tile es vital, no es un silicio de interconexión "vacío" con TSV como ahora, es una especie de IOD de AMD muy simplificado donde encima se colocan los Tiles. Lo mejor es que vale tanto para CPU como para GPU, así como una mezcla entre ambas. Señoras, señores, este concepto es disruptivo, es otro nivel. La figura 29A incluso añade Fabric y Bridge (EMIB 3.5D) a la ecuación, y habla abiertamente de esto como I/O, Caché y lógica, de ahí que Intel diseñase su nodo Intel 3 con una variante para dicho fin.
Varios Base Tile conectados con un puente de interconexión
Es ya la vuelta de rosca que faltaba. ¿Por qué? Pues porque Intel puede crear distintos Base Tile para poner encima lo que necesite, fabricados en nodos distintos y ahorrar costes. Por ejemplo, las DDR5 o DDR6 pueden ir en un Base Tile de un nodo, la GDDR en otro distinto adaptado, los Tiles de CPU y GPU en uno o dos separados, y así sucesivamente según el diseño del producto, sea para un mercado u otro.
Todos estos Base Tile están conectados por lo que Intel denomina como Bridge Interconnect (3606), el cual cambia de número en la figura 29B, que es la que muestra en detalle todo. Por ejemplo, a observar detenidamente, la diferencia entre el IB I/O y Control, ya que el primero se conectan entre ellos, mientras que la parte de control de los Base Tile es la que funciona con el Bridge Interconnect.
La vista desde arriba de la figura 37 simplifica lo que se verá ya teniendo el producto en la mano, sin los buses, que serán lógicamente internos dentro del Base Tile y sustrato. Intel muestra 6 Tiles distintos, formados seguramente por Tiles, por eso en el diagrama pone Chiplets, porque es más fácil decir que son chiplets formados por Tiles que realmente decir que es un Tile grande formado por Tiles más pequeños, como hemos visto arriba.
Cada uno conecta con otro Base Tile con el Interconnect Bridge, solo que este es de memoria. Simplificando, cada Tile Logic tiene conectado directamente un Memory Tile, siendo estos independientes físicamente hablando.
En medio, y como se ve, está el Fabric Interconnect (3718), que es el que maneja todos los datos entre todos ellos. Por último, lo que sería el sustrato central, lo que hace contacto con los pines de la placa base, Intel lo ha denominado Base Chiplet, otro concepto para simplificar el relato.
Por último, si tenéis curiosidad de cómo se hará esto a nivel interno, tenéis la Figura 40 como resumen de este último tramo. Como vemos, es extremadamente complejo, pero representa no un salto adelante, sino varios, una modularidad increíble y la definición clara de cómo Intel ve las nuevas CPU, GPU o mixtas con apilamiento vertical 3D, incluida la L3, DDR, GDDR o HBM, todas estas en formato horizontal. Como decía arriba, totalmente disruptivo.