Intel revela o 'O quê' e o 'Por que' da interconexão CXL, sua resposta ao NVLink



CXL, short for Compute Express Link, is an ambitious new interconnect technology for removable high-bandwidth devices, such as GPU-based compute accelerators, in a data-center environment. It is designed to overcome many of the technical limitations of PCI-Express, the least of which is bandwidth. Intel sensed that its upcoming family of scalable compute accelerators under the Xe band need a specialized interconnect, which Intel wants to push as the next industry standard. The development of CXL is also triggered by compute accelerator majors NVIDIA and AMD already having similar interconnects of their own, NVLink and InfinityFabric, respectively. At a dedicated event dubbed 'Interconnect Day 2019,' Intel put out a technical presentation that spelled out the nuts and bolts of CXL.

A Intel começou descrevendo por que o setor precisa de CXL e por que o PCI-Express (PCIe) não se adequa ao seu caso de uso. Para um dispositivo de segmento de cliente, o PCIe é perfeito, pois as máquinas de segmento de cliente não têm muitos dispositivos, memória muito grande e os aplicativos não têm uma área de cobertura de memória muito grande ou escala em várias máquinas. O PCIe falha muito no data center, ao lidar com vários dispositivos que consomem muita largura de banda e vastos pools de memória compartilhada. Sua maior deficiência são pools de memória isolados para cada dispositivo e mecanismos de acesso ineficientes. O compartilhamento de recursos é quase impossível. Compartilhar operandos e dados entre vários dispositivos, como dois aceleradores de GPU trabalhando em um problema, é muito ineficiente. E, por último, há latência, muito. A latência é o maior inimigo dos conjuntos de memórias compartilhadas que se estendem por várias máquinas físicas. O CXL foi projetado para superar muitos desses problemas sem descartar a melhor parte do PCIe - a simplicidade e a adaptabilidade de sua camada física. O CXL usa a camada física PCIe e possui largura de banda bruta no papel de 32 Gbps por pista, por direção, alinhada com o padrão PCIe gen 5.0. A camada de link é onde está todo o molho secreto. A Intel trabalhou em novos protocolos de handshake, negociação automática e transação, substituindo os do PCIe, projetados para superar suas deficiências listadas acima. Com o PCIe gen 5.0 já padronizado pelo PCI-SIG, a Intel poderia compartilhar o CXL IP de volta ao SIG com o PCIe gen 6.0. Em outras palavras, a Intel admite que o CXL pode não sobreviver ao PCIe e, até que o PCI-SIG possa padronizar a geração 6.0 (por volta de 2021-22, se não depois), o CXL é a necessidade da hora. A camada de transação CXL consiste em três subprotocolo multiplexados que são executados simultaneamente em um único link. Eles são: CXL.io, CXL.cache e CXL.memory. O CXL.io lida com a descoberta de dispositivos, negociação de links, interrupções, acesso ao registro etc., que são basicamente tarefas que levam uma máquina a trabalhar com um dispositivo. O CXL.cache lida com o acesso do dispositivo à memória do processador local. CXL.memory lida com o acesso do processador à memória não local (memória controlada por outro processador ou outra máquina).
A Intel listou casos de uso para CXL, que começa com aceleradores com memória, como placas gráficas, aceleradores de computação GPU e placas de computação de alta densidade. Todos os três protocolos da camada de transação CXL são relevantes para esses dispositivos. Em seguida, são FPGAs e NICs. CXL.io e CXL.cache são relevantes aqui, pois as pilhas de rede são processadas pelos processadores locais da NIC. Por fim, existem os mais importantes buffers de memória. Você pode imaginar esses dispositivos como 'NAS, mas com sticks de DRAM'. Os datacenters futuros consistirão em vastos pools de memória compartilhados entre milhares de máquinas físicas e aceleradores. CXL.memory e CXL.cache são relevantes. Muito do que torna a camada de link CXL mais rápida que o PCIe é sua pilha otimizada (carga de processamento para a CPU). A pilha CXL é construída desde o início, mantendo a baixa latência como objetivo de design.
Source: Serve the Home