Articulo de referencia

Compute Express Link

Compute Express Link ( CXL ) es una interconexión de estándar abierto para conexiones de alta velocidad y alta capacidad entre CPU y dispositivos, y entre CPU y memoria, diseñad...

Compute Express Link ( CXL ) es una interconexión de estándar abierto para conexiones de alta velocidad y alta capacidad entre CPU y dispositivos, y entre CPU y memoria, diseñada para computadoras de centros de datos de alto rendimiento . [ 1 ] [ 2 ] [ 3 ] [ 4 ] CXL se basa en la interfaz física y eléctrica serial PCI Express (PCIe) e incluye el protocolo de entrada/salida de bloques basado en PCIe (CXL.io) y nuevos protocolos coherentes de caché para acceder a la memoria del sistema (CXL.cache) y a la memoria del dispositivo (CXL.mem). Las capacidades de comunicación serial y agrupación permiten que la memoria CXL supere las limitaciones de rendimiento y empaquetado de zócalos de la memoria DIMM común al implementar altas capacidades de almacenamiento. [ 5 ] [ 6 ]

Historia

La tecnología CXL fue desarrollada principalmente por Intel . El Consorcio CXL se formó en marzo de 2019 por los miembros fundadores Alibaba Group , Cisco Systems , Dell EMC , Meta , Google , Hewlett Packard Enterprise (HPE), Huawei , Intel Corporation y Microsoft , [ 7 ] [ 8 ] y se incorporó oficialmente en septiembre de 2019. [ 9 ] A partir de enero de 2022, AMD , Nvidia , Samsung Electronics y Xilinx se unieron a los fundadores en la junta directiva, mientras que ARM , Broadcom , Ericsson , IBM , Keysight , Kioxia , Marvell Technology , Mellanox , Microchip Technology , Micron , Oracle Corporation , Qualcomm , Rambus , Renesas , Seagate , SK Hynix , Synopsys y Western Digital , entre otros, fueron miembros contribuyentes. [ 10 ] [ 11 ] Los socios de la industria incluyen PCI-SIG , [ 12 ] Gen-Z , [ 13 ] SNIA , [ 14 ] y DMTF . [ 15 ]

El 2 de abril de 2020, los consorcios Compute Express Link y Gen-Z anunciaron planes para implementar la interoperabilidad entre las dos tecnologías, [ 16 ] [ 17 ] con resultados iniciales presentados en enero de 2021. [ 18 ] El 10 de noviembre de 2021, las especificaciones y los activos de Gen-Z se transfirieron a CXL, para centrarse en el desarrollo de un estándar industrial único. [ 19 ] En el momento de este anuncio, el 70 % de los miembros de Gen-Z ya se habían unido al consorcio CXL. [ 20 ]

El 1 de agosto de 2022, las especificaciones y los activos de OpenCAPI se transfirieron al Consorcio CXL, [ 21 ] [ 22 ] que ahora incluye empresas detrás de tecnologías de interconexión coherente de memoria como los estándares abiertos OpenCAPI (IBM), Gen-Z (HPE) y CCIX (Xilinx), y los protocolos propietarios InfiniBand / RoCE (Mellanox), Infinity Fabric (AMD), Omni-Path y QuickPath / Ultra Path (Intel), y NVLink/NVSwitch (Nvidia). [ 23 ]

Presupuesto

El 11 de marzo de 2019 se publicó la especificación CXL 1.0 basada en PCIe 5.0. [ 8 ] Esta permite que la CPU del host acceda a la memoria compartida en los dispositivos aceleradores mediante un protocolo de coherencia de caché. La especificación CXL 1.1 se publicó en junio de 2019.

El 10 de noviembre de 2020 se publicó la especificación CXL 2.0. Esta nueva versión añade compatibilidad con la conmutación CXL, lo que permite conectar varios dispositivos CXL 1.x y 2.0 a un procesador host CXL 2.0, o bien agrupar cada dispositivo en varios procesadores host, en configuraciones de memoria compartida distribuida y almacenamiento desagregado ; además, implementa la integridad del dispositivo y el cifrado de datos. [ 24 ] No hay aumento de ancho de banda con respecto a CXL 1.x, ya que CXL 2.0 sigue utilizando PCIe 5.0 PHY.

El 2 de agosto de 2022 se publicó la especificación CXL 3.0, basada en la interfaz física PCIe 6.0 y la codificación PAM-4 con el doble de ancho de banda; las nuevas características incluyen capacidades de interconexión con conmutación multinivel y múltiples tipos de dispositivos por puerto, y coherencia mejorada con DMA punto a punto y compartición de memoria. [ 25 ] [ 26 ]

El 14 de noviembre de 2023 se publicó la especificación CXL 3.1.

El 3 de diciembre de 2024 se publicó la especificación CXL 3.2.

El 18 de noviembre de 2025 se publicó la especificación CXL 4.0.

Implementaciones

El 2 de abril de 2019, Intel anunció su familia de FPGA Agilex con CXL. [ 27 ]

El 11 de mayo de 2021, Samsung anunció un  módulo de expansión de memoria DDR5 de 128 GB que permite una expansión de memoria a nivel de terabytes junto con un alto rendimiento para su uso en centros de datos y potencialmente en PC de próxima generación. [ 28 ] Una  versión actualizada de 512 GB basada en un controlador de memoria propietario se lanzó el 10 de mayo de 2022. [ 29 ]

En 2021, se anunció la compatibilidad con CXL 1.1 para los procesadores Intel Sapphire Rapids [ 30 ] y los procesadores AMD Zen 4 EPYC "Genoa" y "Bergamo". [ 31 ]

Los dispositivos CXL fueron mostrados en la Conferencia de Supercomputación ACM/IEEE (SC21) por proveedores como Intel, [ 32 ] Astera, Rambus, Synopsys, Samsung y Teledyne LeCroy . [ 33 ] [ 34 ] [ 35 ]

Protocolos

La capa de transacciones CXL está compuesta por tres subprotocolos multiplexados dinámicamente (cambian según la demanda) en un único enlace: [ 36 ] [ 37 ] [ 24 ]

  • CXL.io , basado en PCIe 5.0 (y PCIe 6.0 después de CXL 3.0) con algunas mejoras, proporciona configuración, inicialización y gestión de enlaces, detección y enumeración de dispositivos, interrupciones, DMA y acceso de E/S a registros mediante cargas/almacenes no coherentes. [ 38 ]
  • CXL.cache : define las interacciones entre un host y un dispositivo, [ 38 ] permite que los dispositivos periféricos accedan y almacenen en caché de forma coherente la memoria de la CPU del host con una interfaz de solicitud/respuesta de baja latencia.
  • CXL.mem : permite que la CPU del host acceda de forma coherente a la memoria conectada al dispositivo con comandos de carga/almacenamiento tanto para almacenamiento volátil (RAM) como para almacenamiento persistente no volátil (memoria flash). [ 38 ]

Los protocolos CXL.cache y CXL.mem operan con una capa de enlace/transacción común, que es independiente de la capa de enlace y transacción del protocolo CXL.io. CXL.cache y CXL.mem transmiten datos relevantes más rápido que CXL.io mediante el uso de una Unidad de Control de Flujo (FLIT) de ancho fijo de 68 B sobre el PHY PCIe 5.0 estándar. Dos de los 68 bytes son utilizados por un bloque de Arbitraje y Multiplexación (ARB/MUX) para multiplexar entre los subprotocolos de caché, memoria y E/S. Los 66 B restantes consisten en cuatro "ranuras" de datos de 16 B y un valor de verificación de redundancia cíclica (CRC) de 2 B. [ 37 ] Las FLIT de CXL encapsulan datos de Paquete de Capa de Transacción (TLP) y Paquete de Capa de Enlace de Datos (DLLP) estándar de PCIe con un formato de tamaño de trama fijo. [ 39 ] [ 40 ]

CXL 3.0 introduce FLIT de 256 bytes en modo de transferencia PAM-4. Los FLIT vienen en dos variantes:

  • Estándar: La capa física utiliza los bytes 0-1, 242-249 y 250-255 como encabezado de archivo de 2 bytes (HDR), código CRC de 8 bytes y código de corrección de errores hacia adelante (FEC), respectivamente. Esto deja 240 bytes para los datos propiamente dichos.
  • Latencia optimizada (LOpt): dividido en dos mitades de 128 bytes, donde la ruta óptima (coincidencias CRC) reduce la latencia en aproximadamente 5 ns con respecto al flit estándar. Los bytes reservados del PHY son: 0-1 como HDR de 2 bytes, 122-127 como CRC de 6 bytes para los bytes 0-127, 244-249 como FEC de 6 bytes para los 256 bytes, y 250-255 como 6 bytes para los bytes 128-255. Esto deja 236 bytes para los datos reales.

Tipos de dispositivos

CXL está diseñado para admitir tres tipos principales de dispositivos: [ 24 ]

  • Tipo 1 (CXL.io y CXL.cache): acceso coherente a la memoria del host, aceleradores especializados (como NIC inteligentes , NIC PGAS y NIC Atomics) sin memoria local. Los dispositivos dependen del acceso coherente a la memoria de la CPU del host. [ 38 ]
  • Tipo 2 (CXL.io, CXL.cache y CXL.mem): acceso coherente a la memoria del host y a la memoria del dispositivo, aceleradores de propósito general ( GPU , ASIC o FPGA ) con memoria local GDDR o HBM de alto rendimiento . Los dispositivos pueden acceder de forma coherente a la memoria de la CPU del host y/o proporcionar acceso coherente o no coherente a la memoria local del dispositivo desde la CPU del host. [ 38 ]
  • Tipo 3 (CXL.io y CXL.mem): permiten que el host acceda y administre la memoria del dispositivo conectado, las tarjetas de expansión de memoria y la memoria persistente. Los dispositivos proporcionan a la CPU del host acceso de baja latencia a la DRAM local o al almacenamiento no volátil direccionable por bytes. [ 38 ]

Los dispositivos de tipo 2 implementan dos modos de coherencia de memoria, gestionados por el controlador del dispositivo. En el modo de polarización del dispositivo, este accede directamente a la memoria local y la CPU no realiza ningún almacenamiento en caché; en el modo de polarización del host, el controlador de caché de la CPU del host gestiona todo el acceso a la memoria del dispositivo. El modo de coherencia se puede configurar individualmente para cada  página de 4 KB, almacenada en una tabla de traducción en la memoria local de los dispositivos de tipo 2. A diferencia de otros protocolos de coherencia de memoria de CPU a CPU, esta configuración solo requiere que el controlador de memoria de la CPU del host implemente el agente de caché; este enfoque asimétrico reduce la complejidad de la implementación y la latencia. [ 37 ]

CXL 2.0 agregó soporte para conmutación en estructuras de dispositivos basadas en árboles, lo que permite que los dispositivos PCIe, CXL 1.1 y CXL 2.0 formen jerarquías virtuales de dispositivos lógicos simples y múltiples que pueden ser administrados por múltiples hosts. [ 41 ]

CXL 3.0 reemplazó los modos de polarización con una semántica de coherencia mejorada, lo que permite que los dispositivos de tipo 2 y tipo 3 invaliden los datos en la caché del host cuando el dispositivo realiza un cambio en la memoria local. La coherencia mejorada también ayuda a implementar transferencias punto a punto dentro de una jerarquía virtual de dispositivos en el mismo dominio de coherencia. Además, admite el uso compartido del mismo segmento de memoria entre varios dispositivos, a diferencia del agrupamiento de memoria, donde a cada dispositivo se le asignaba un segmento separado. [ 42 ]

CXL 3.0 permite múltiples dispositivos de tipo 1 y tipo 2 por cada puerto raíz CXL; además, incorpora conmutación multinivel, lo que facilita la implementación de redes de dispositivos con topologías no arbóreas como malla, anillo o spline/hoja. Cada nodo puede ser un host o un dispositivo de cualquier tipo. Los dispositivos de tipo 3 pueden implementar el modo de memoria conectada a la estructura global (GFAM), que conecta un dispositivo de memoria a un nodo de conmutación sin necesidad de una conexión directa con el host. Los dispositivos y hosts utilizan el mecanismo de direccionamiento de enrutamiento basado en puertos (PBR), que admite hasta 4096 nodos. [ 42 ]

Dispositivos

En mayo de 2022, los primeros  dispositivos de 512 GB estuvieron disponibles con 4 veces más almacenamiento que los dispositivos anteriores. [ 43 ]

Soporte del sistema operativo

Estado latente

Los controladores de memoria CXL suelen añadir unos 200  ns de latencia. [ 45 ]

Véase también

Referencias

  1. "ACERCA DE CXL" . Enlace de Compute Express . Consultado el 9 de agosto de 2019 .
  2. "Synopsys ofrece la primera solución IP Compute Express Link (CXL) de la industria para un rendimiento revolucionario en SoC con uso intensivo de datos" . finance.yahoo.com . Yahoo! Finanzas . Consultado el 9 de noviembre de 2019 .
  3. "Un hito en el movimiento de datos" . Sala de prensa de Intel . Intel . Consultado el 9 de noviembre de 2019 .
  4. "Compute Express Link Consortium (CXL) se constituye oficialmente; anuncia la ampliación de su junta directiva" . www.businesswire.com . Business Wire . 17 de septiembre de 2019. Consultado el 9 de noviembre de 2019 .
  5. "StackPath" . www.electronicdesign.com . 13 de octubre de 2021. Consultado el 3 de febrero de 2023 .
  6. Mann, Tobias (5 de diciembre de 2022). "¿Qué tan mala es la latencia de memoria de CXL?" . The Next Platform . Consultado el 3 de febrero de 2023 .
  7. Calvert, Will (13 de marzo de 2019). "Intel, Google y otros unen fuerzas para la interconexión CXL" . www.datacenterdynamics.com .
  8. 1 2 Cutress, Ian. "Especificación CXL 1.0 publicada: nueva interconexión de alta velocidad para la industria de Intel" . Anandtech . Archivado del original el 11 de marzo de 2019. Recuperado el 9 de agosto de 2019 .
  9. "Compute Express Link Consortium (CXL) se constituye oficialmente y anuncia la ampliación de su junta directiva" . www.businesswire.com . 17 de septiembre de 2019.
  10. "Compute Express Link: Nuestros miembros" . Consorcio CXL . 2020. Consultado el 25 de septiembre de 2020 .
  11. Papermaster, Mark (18 de julio de 2019). "AMD se une a consorcios para impulsar CXL, una nueva interconexión de alta velocidad para un rendimiento revolucionario" . Community.AMD . Consultado el 25 de septiembre de 2020 .
  12. "CXL Consortium y PCI-SIG anuncian un acuerdo de memorando de entendimiento de marketing" . 23 de septiembre de 2021. Archivado del original el 29 de agosto de 2023. Consultado el 18 de enero de 2022 .
  13. "Enlaces con la industria" . 27 de septiembre de 2023.
  14. "SNIA y el consorcio CXL forman una alianza estratégica" . 3 de noviembre de 2020. Archivado del original el 16 de enero de 2022. Consultado el 16 de enero de 2022 .
  15. "DMTF y el consorcio CXL establecen un registro de trabajo" . 14 de abril de 2020. Archivado del original el 29 de agosto de 2023. Consultado el 16 de enero de 2022 .
  16. "El consorcio CXL y el consorcio Gen-Z anuncian un acuerdo de entendimiento" (PDF) . Beaverton, Oregón. 2 de abril de 2020. Consultado el 25 de septiembre de 2020 .
  17. "CXL Consortium y Gen-Z Consortium anuncian un acuerdo de entendimiento" . 2 de abril de 2020. Archivado del original el 11 de abril de 2020. Consultado el 11 de abril de 2020 .
  18. "Actualización del Memorando de Entendimiento del Consorcio CXL™ y el Consorcio Gen-Z™: Un camino hacia el protocolo" . 24 de junio de 2021. Archivado del original el 18 de enero de 2022. Consultado el 18 de enero de 2022 .
  19. Consorcio, CXL (10 de noviembre de 2021). "Explorando el futuro" . Compute Express Link . Archivado del original el 1 de diciembre de 2021. Recuperado el 1 de diciembre de 2021 .
  20. "CXL absorberá a la Generación Z" . 9 de diciembre de 2021.
  21. OpenCAPI se integrará en CXL: CXL se convertirá en el estándar dominante de interconexión de CPU.
  22. El consorcio CXL y el consorcio OpenCAPI firman una carta de intención para transferir las especificaciones de OpenCAPI a CXL.
  23. Morgan, Timothy Prickett (23 de noviembre de 2021). "Finalmente, una estrategia de interconexión coherente: CXL absorbe a la generación Z" . The Next Platform .
  24. 1 2 3 "Compute Express Link (CXL): Todo lo que necesitas saber" . Rambus .
  25. "Anunciado Compute Express Link (CXL) 3.0: Velocidades duplicadas y arquitecturas flexibles" . Archivado del original el 2 de agosto de 2022.
  26. "Compute Express Link (CXL) 3.0 debuta y gana la guerra de interconexión de CPU" . 2 de agosto de 2022.
  27. "¿Cómo se relacionan la nueva familia de FPGA Intel Agilex y la estructura de interconexión coherente CXL?" . PSG@Intel . 2019-05-03 . Consultado el 2019-08-09 .
  28. "Samsung presenta el primer módulo de memoria de la industria que incorpora el nuevo estándar de interconexión CXL" . Samsung . 11 de mayo de 2021. Consultado el 11 de mayo de 2021 .
  29. "Samsung Electronics presenta el primer módulo de memoria CXL de 512 GB de la industria" .
  30. "Día de la Arquitectura de Intel 2021" . Intel . 31 de diciembre de 2021.
  31. Paul Alcorn (8 de noviembre de 2021). "AMD presenta la hoja de ruta de la CPU Zen 4: Genoa de 96 núcleos y 5 nm en 2022, Bergamo de 128 núcleos en 2023" . Tom's Hardware .
  32. Patrick Kennedy (7 de diciembre de 2021). "Intel Sapphire Rapids CXL con Emmitsburg PCH mostrado en SC21" . Serve the Home . Consultado el 18 de noviembre de 2022 .
  33. "CXL sometida a pruebas rigurosas" . 10 de diciembre de 2021.
  34. "El consorcio CXL presenta las primeras demostraciones públicas de la tecnología Compute Express Link en SC21" . HPCwire .
  35. Consorcio, CXL (16 de diciembre de 2021). "El Consorcio CXL causa sensación en Supercomputing 2021 (SC21)" . Compute Express Link . Archivado del original el 13 de enero de 2022. Consultado el 13 de enero de 2022 .
  36. "Introducción a Compute Express Link (CXL): El avance en la interconexión de CPU a dispositivo - Compute Express Link" . computeexpresslink.org . 23 de septiembre de 2019. Consultado el 16 de julio de 2024 .
  37. 1 2 3 "Compute Express Link Standard | DesignWare IP | Synopsys" . www.synopsys.com .
  38. 1 2 3 4 5 6 Consorcio CXL (2021-04-02). Introducción a la tecnología Compute Express Link™ (CXL™) . Recuperado el 16-07-2024 vía YouTube.
  39. Consorcio, CXL (23 de septiembre de 2019). "Introducción a Compute Express Link (CXL): El avance en la interconexión de CPU a dispositivo" . Compute Express Link . Archivado del original el 20 de marzo de 2022. Recuperado el 13 de enero de 2022 .
  40. "El futuro de la memoria y el almacenamiento | FMS 2026" (PDF) . www.flashmemorysummit.com . Consultado el 16 de mayo de 2026 .
  41. Danny Volkind y Elad Shlisberg (15 de junio de 2022). "CXL 1.1 vs CXL 2.0: ¿Cuál es la diferencia?" (PDF) . UnifabriX. Archivado del original (PDF) el 26 de diciembre de 2022. Consultado el 18 de noviembre de 2022 .
  42. 1 2 "Compute Express Link 3.0" (PDF) . Archivado del original (PDF) el 8 de agosto de 2022. Consultado el 7 de agosto de 2022 .
  43. "Samsung Electronics presenta el primer módulo de memoria CXL de 512 GB de la industria" (Comunicado de prensa). Samsung. 10 de mayo de 2022.
  44. "Sesión: CXLT-201-1: Factores de forma de CXL" (PDF) . Archivado del original (PDF) el 10 de septiembre de 2024.
  45. Mann, Tobias (5 de diciembre de 2022). "¿Qué tan mala es la latencia de memoria de CXL?" . The Next Platform . Consultado el 3 de febrero de 2023 .
  • Sitio web oficial