Seguramente muchas veces habrás escuchado o leído que los procesadores AMD Ryzen están formados por complejos centrales, a saber, CCD y CCX. Pero, ¿qué es un CCX y en qué se diferencia de un CCD en un procesador de AMD? ¿Para qué sirve cada uno de ellos? En este artículo te lo vamos a explicar en profundidad.
Son muchos los factores responsables del reciente éxito de los procesadores de AMD en el mercado de consumo, pero sin duda el diseño de chiplet o MCM (módulo de múltiples chips) está en el centro de todas las miradas al respecto, ya que este diseño permitió a AMD aumentar el número de núcleos a cifras nunca antes vistas en el mercado de consumo y preparó el camino para una especie de revolución.
Los complejos centrales: CCD y CCX en AMD Ryzen
El procesador AMD Ryzen 9 3950X cuenta con 16 núcleos, mientras que el procesador buque insignia, el Threadripper 3990X, cuenta con el increíble número de 64 núcleos físicos, lo mismo que los procesadores para servidor Epyc Rome de la firma. Esto significa que, a cualquier precio dado, AMD puede ofrecer más núcleos, más subprocesos y, por lo tanto, un mejor rendimiento al poder paralelizar muchas más tareas que los procesadores de Intel, incluso después de una serie de recortes de precios.
Los CCD y CCX son unidades funcionales de estos complejos centrales que conforman el procesador. Estas dos unidades funcionales se encuentran en el corazón del enfoque modular de AMD para sus procesadores Ryzen, y para explicarlas debemos necesariamente empezar por los CCX.
La unidad básica de un procesador AMD Ryzen es un CCX o Core Complex, un modelo de CPU de cuatro núcleos con memoria caché L3 compartida entre éstos. En las piezas más nuevas de Ryzen 3000, la cantidad de L3 es mayor y se la conoce como «Gamecache».
Hay numerosos pros y contras de que el CCX sea la unidad funcional básica de Ryzen; por ejemplo, un aspecto negativo es que el coste básico de fabricación se ve incrementado ya que AMD necesita meter un mínimo de cuatro núcleos, pues son los que conforman un solo CCX. Sin embargo, esto se ve compensado por el hecho de que AMD puede crear CCX parcialmente funcionales con, digamos, tres de los cuatro núcleos activos, de manera que puedan crear diferentes modelos de procesador a partir de la misma base (sin embargo en términos de fabricación sigue teniendo 4 núcleos igualmente). Por ejemplo, el AMD Ryzen 5 3600 cuenta con dos CCX, cada uno de los cuales tiene un núcleo desactivado para un total de 6 núcleos funcionales.
Sin embargo, mientras que los CCX son la unidad básica de los procesadores de AMD, a nivel arquitectónico tenemos los Core Chiplet Dies o CCD, su nivel más bajo de abstracción. Un CCD consta de dos CCX emparejados mediante la interconexión de Infinity Fabric; todas las piezas Ryzen, incluso las de solo cuatro núcleos, tienen al menos un CCD, lo que significa que como mínimo hay siempre presentes dos CCX (la diferencia, como hemos mencionado antes, es que pueden tener núcleos desactivados).
Los CCX desaparecen en la arquitectura Zen 3
Con los procesadores Ryzen 5000 y Milan basados en Zen 3, AMD pretende descartar el concepto de dos CCX en un CCD. En cambio, lo que tendremos será un CCD de 8 núcleos con acceso a los 32 MB completos de caché del die, lo que significa una menor latencia de núcleo a núcleo, más caché disponible para todos, y un mayor ancho de banda de caché. Estos factores aportan una importante ganancia de rendimiento en las cargas de trabajo, especialmente para juegos.
Teniendo esto en cuenta, es mucho más fácil ver el mayor de los beneficios: la facilidad para escalar. Intel utiliza lo que se llama un enfoque monolítico para el diseño de sus CPU; cada CPU que fabrica tiene un diseño dedicado, con una cierta cantidad de núcleos, y cuando se lleva a cabo la fabricación todos los núcleos de un diseño en particular deben ser totalmente funcionales (Intel simplemente descarta las partes que no lo son). Para los procesadores de dos núcleos esto tiene mucho sentido ya que cuesta menos fabricarlos, pero pierdes esa capacidad de escalar que tienen los procesadores de AMC utilizando este diseño de CCD.
Sin embargo, dado que el rendimiento de fabricación del silicio nunca es del 100%, el coste aumenta exponencialmente con diseños más grandes. Cuando llegas a 10 núcleos o más, estás prácticamente garantizando que por cada CPU funcional Intel descarta al menos una pieza defectuosa (hay que tener en cuenta que con que uno solo de los núcleos no sea funcional, la pieza completa se descarta). Esto significa que la tasa de rendimiento de fabricación de Intel es muy pobre en comparación AMD, a quienes no les importa que un die salga con un núcleo «malo» porque simplemente lo desactivan y, por decirlo de alguna manera, venden ese procesador con un núcleo menos y listo.