Eu não pude deixar de notar que na apresentação da Cxl Intel deu hoje uma dica sobre o futuro de suas ambições da GPU XE. While it was not explicitly stated anywhere - it seems to have a pretty obvious implication to me; time to coin a term: Coherent Multi-GPU.A Cxl é a nova camada de interconexão da Intel, projetada para resolver muitos problemas com o protocolo PCIE e uma das principais razões pelas quais a Multi -GPU nunca decolou corretamente é devido à falta de - você adivinhou - a coerença.Eu acho que é muito provável que veremos XE GPUs funcionando no "Modo Cxl" no futuro.
Intel Cxl in a nutshell: Heterogenous compute protocol for scaling processors over PCIe Gen 5 and beyond
A Intel discutiu sua nova interconexão de processador a processador, chamada de Compute Express Link (Cxl), em detalhes no evento 'Interconect Day 2019' ontem. Whereas we have talked in depth about data centre interconnects before, this particular one works to connect devices across the physical PCIe port. The reason why I mention physical and not just PCIe is because while Intel Cxl is designed to work over the physical PCIe port to ensure universal compatibility - it will not utilize the PCIe protocol but instead act as an alternative protocol to the same; one that is far more future proof and scalable than its archaic (soon-to-be) predecessor.
A implantação de atualizações significativas de capacidade sobre as portas existentes é muito impressionante no ecossistema de hoje e o que a Intel está afirmando não é apenas uma pequena melhoria de capacidade - é um enorme.A primeira geração Cxl foi projetada para funcionar com o PCIE Gen 5 (por isso ainda está a alguns anos) e espera -se que acelere o tempo para o PCIE 6.Temos o PCIE 3 há quase 8 anos e a Intel está se preparando para reduzir o ciclo de atualização da indústria para este padrão.A mudança entre os protocolos PCIE e Cxl será completamente perfeita.
How Intel Cxl solves traditional PCIe Multi-GPU problems
A apresentação que a Intel deu hoje no Cxl estava focada no aspecto do data center de tudo, mas vemos um ângulo muito mais interessante para a base de leitores - que a empresa não declarou explicitamente, mas é bastante óbvia quando você pensa sobre isso. While Cxl is pitched as the ultimate scaling fabric to glue together CPUs and accelerators there is no reason it cannot be used to achieve a finally-decent implementation of multi-GPU.É nisso que vou me concentrar na minha cobertura de Cxl.Vamos chamá-lo: Multi-GPU coerente.
Um dos principais problemas do PCIE Scaling agora é que qualquer dispositivo conectado através dele possui um pool de memória isolado, alta latência em termos de comunicação processadora para processador e falta de coerência em todo o sistema.É por isso que empresas como NVIDIA e AMD tiveram que inovar historicamente no lado do software com todo tipo de técnicas multi-GPU, como renderização de quadros divididos ou renderização sequencial.As GPUs múltiplas não agiam como um todo coerente - elas agiram de forma independente e mostrou.Cxl visa consertar tudo isso.
Com a Intel Cxl, um pool de memória coerente pode ser criado e a latência reduzida por uma ordem de magnitude.Todo o sistema atuará como um todo coeso e escalará significativamente melhor.Isso significa que, se você tiver um sistema executando um Intel XE DGPU, poderá jogar outro em um slot de PCIE sobressalente e ele deve escalar perfeitamente.Existem três protocolos que a Cxl apresenta:
Cxl.IO, que é um protocolo de IO, substitui o PCIE, por descoberta, configuração, acesso ao registro, interrupções etc.. Then you have Cxl.cache and Cxl.Memória, que são os que estamos interessados principalmente.Esses protocolos permitem que os dispositivos conectados acessem a memória e o cache de maneira coerente.No papel, isso foi projetado para a CPU acessar o VRAM do acelerador e para o acelerador acessar o cache da CPU, mas não vejo razão para que esses protocolos também não permitam que várias GPUs acessem os buffers de memória uns dos outros.
You know the pesky limitation of multi-GPU where the VRAM never added up? Well, Cxl.memory and Cxl.cache em conjunto deve resolver isso. Intel has also stated that unlike other interconnects, Cxl is designed for low latency - which is perfect for the multi-GPU approach. It is unclear at this time whether we can implement timing through Cxl as well or whether that would still require 'syncing' connections like SLI bridges.
Intel's Cxl protocol is also asymmetric, which allows the system to not only accept accelerators (read: GPUs) but also allows coherent memory buffers as well as protocol inoperability.Não apenas isso, mas esse é um padrão muito mais aberto - permitindo que os processadores não intelm adotem o protocolo - o que é fundamental se a Intel quiser uma ampla aceitação deste protocolo. Coherency bias in the Cxl protocol, unlike traditional protocols, means that the GPU in question does not have to stop at the processor while accessing memory, it can do so on its own, alleviating driver latency.
Obviamente, as GPUs de lado por um segundo, essa abordagem está sendo lançada principalmente para uma configuração de data center, para que as configurações de vários soquetes e o CCIX seja o que isso está atingindo desde o início.Por causa disso, também há um fluxo de viés do hospedeiro - por isso, se você realmente quiser - você ainda pode usar o fluxo mais antigo. Essentially, Intel is trying to create a heteregenous computing infrastructure that allows CPUs, GPUs, accelerators, FPGAs and pretty much anything that can go on a PCIe port to be glued togather as a cohesive whole.
The future: Intel Xe GPUs in Cxl Mode?
A Intel tem sido bastante apertada sobre os detalhes de suas ambições de GPU XE.Tudo o que sabemos é que será escalável. It is a fairly good bet that multi-GPU is going to be involved in some way. Either through Cxl or through an MCM implementation or even both! It is also anyone's guess whether Cxl mode for GPUs will make its way to the mainstream consumer segment for enthusiasts like us - but it is very much clear that it solves a lot of problems that originally made multi-GPU setups unfeasible.
Faz muito tempo desde que a inovação aconteceu na pilha de software e nos protocolos que controlam o fluxo de dados da GPU para a CPU e seria ótimo ver esse gotejamento até o nível do consumidor convencional. If Intel starts out with a singular Xe GPU, Cxl mode can give it the edge to compete with higher-end variants from AMD and NVIDIA - and change the name of the game completely in the process.
If Cxl can seamlessly scale GPUs, then the economics of the market would also change completely.As pessoas poderiam comprar uma GPU mais barata primeiro e depois adicionar outra se quiserem mais poder.Isso acrescentaria muito mais flexibilidade nas decisões de compra e até aliviaria o remorso dos compradores em certa medida para a aula de jogos. If Cxl mode trickles down to the consumer level anytime soon, then we might even see motherboard designs change drastically as multiple sockets and multiple GPUs become a feasible option.Escusado será dizer que parece que as coisas vão ficar bem emocionantes em alguns anos.