Fabric Attached Memory, memória que não é RAM ou cache na CPU

Memória anexada ao tecido

Os avanços na arquitetura dos computadores trazem não apenas melhorias nos processadores, mas também nas memórias utilizadas e muitas vezes novos tipos de hardware são criados. Um deles é Fabric Attached Memory, um tipo de RAM isso faz parte do novo paradigma de processamento in-memory. O que é e quais são as características desse tipo de memória?

Antes de começar, deve ser esclarecido que você não encontrará a Fabric Attached Memory em nenhum PC do mercado no momento em que escrevo este artigo, mesmo que estejamos falando de uma estação de trabalho HEDT. O motivo? Simples, FAM é um tipo de memória que está relacionado à Computação de Alto Desempenho ou HPC. O objetivo do desenvolvimento deste tipo de memória? Exceder o poder de computação do ExaFLOP e neste ponto a arquitetura de memória dos sistemas é muito importante.

O que é Fabric Attached Memory?

Memória anexada ao tecido

Entendemos como Fabric Attached Memory (FAM) ou FAM um tipo de memória que pode ser acessada por um ou mais processadores, que podem ser do mesmo tipo ou de um tipo diferente. Como é diferente das memórias convencionais? No facto de poder ser acedido através de uma interface de rede e uma vez que as infra-estruturas de interligação estão a evoluir para as chamadas Network em um Chip, pode-se dizer que essa memória conectada à interface é a chave para acelerar processos nas CPUs e GPUs do futuro.

Quando falamos em RAM, geralmente pensamos em memória externa ao processador, que é montada em chips separados e é acessada por meio de uma interface. Sob esta definição podemos pensar que podemos definir como FAM os circuitos 3DIC com memória conectada verticalmente, mas o FAM, como o próprio nome indica, é uma memória que está diretamente conectada ao que chamamos de “Tecido”. E o que queremos dizer com esse nome? Qual é a Northbridge, que é o elemento que comunica os diferentes processadores entre si e estes com a RAM.

Bem, a Fabric Attached Memory, está na Northbridge e portanto antes da RAM, daí seu nome.

O conceito de memória Scratchpad

Microscópio de Cache

Quando falamos em Memória Scratchpad nos referimos também a uma RAM alternativa, separada do que é a memória convencional no que diz respeito ao seu endereçamento, então isso significa que todo sistema com uma Memória Scratchpad requer dois sistemas de captura de dados. . Claro, esquecemos de dizer que a memória Scratchpad não é normalmente encontrada fora do processador, mas dentro do processador. O que tem uma série de vantagens:

  • Programas que rodam dentro da Memória Scratchpad rodam mais rápido devido à baixa distância do processador e com menor consumo de energia.
  • Devido à sua proximidade com o processador, um sistema de cache não é usado para acessar a referida memória.

Esse tipo de memória vem sendo usado há décadas e hoje podemos encontrá-lo nas unidades de sombreador das GPUs, portanto não são uma novidade. Como isso está relacionado à memória conectada à malha? Bem, o fato do FAM ser um tipo de Memória Scratchpad, mas onde o uso de uma interface de rede para se comunicar o torna totalmente diferente no seu acesso.

A Fabric Attached Memory é um nível anterior à hierarquia em relação à RAM, mas seu acesso é feito da mesma forma que é feito em um NoC onde os diferentes elementos funcionam como uma rede interconectada com o NoC na parte central e cada elemento tendo seu roteador . Ou seja, para acessar o FAM basta ligar para o seu endereço de rede e isso é algo que todos os elementos do sistema podem fazer.

A memória é o maior gargalo para o processamento

Evolução do frasco de memória

No sistema ideal, a memória teria tempo de resposta suficiente para que o processamento das instruções fosse feito na maior velocidade possível. Infelizmente, a evolução da memória não acompanhou a evolução dos processadores e se tornou um fardo que tornou necessário encontrar soluções para esses problemas.

Existem duas razões pelas quais a memória não atinge a velocidade, mas a principal é que não podemos colocar grandes quantidades de memória dentro de um processador e, portanto, temos que colocá-la fora dele em outro chip. A segunda é respondida com a seguinte pergunta: o que acontece com os sinais elétricos quando a distância da fiação é aumentada? Seu consumo de energia cresce. E é aí que a Fabric Attached Memory tira toda a sua vantagem, pois por ser uma memória próxima das unidades de processamento pode atingir grandes larguras de banda sem exigir alto consumo.

Multiprocessador de memória anexada ao tecido

Mas a Fabric Attached Memory não é apenas a chave para comunicar elementos dentro do mesmo processador, mas diferentes processadores entre si, por exemplo, se temos vários SoCs que precisam se comunicar regularmente, eles geralmente gravam os dados na RAM compartilhada por todos os para que seja posteriormente recuperado. da mesma RAM pelo resto dos processadores para continuar com o trabalho. Com a Fabric Attached Memory, não é necessário que os processadores acessem a RAM, pois os dados podem ser gravados na Fabric Attached Memory que está localizada em um nível da hierarquia entre o último nível do cache dos diferentes processadores e a interface. para a RAM de cada um deles.

O FAM faz parte do futuro no PC

Chiplets CPU CPU GPU AMD Intel

No início do artigo, fizemos a afirmação que dá título a esta seção, mas cada afirmação ainda é uma resposta a uma pergunta que responde a um motivo. E isso não é outro senão nos PCs convencionais, a quantidade de FAM necessária para ser usada no processador seria limitada. Portanto, a melhor solução é um sistema baseado em chips onde o Northbridge é desconectado do resto do sistema, como é o caso em AMDCPUs Ryzen 3000 e Ryzen 5000 da.

O FAM por sua natureza dentro da hierarquia de memória deve ter mais capacidade do que o cache mais rápido, mas menos do que a memória RAM. Com o Northbridge em um chip separado, é possível integrar a Fabric Attached Memory nele, mas em um chip 2D é difícil fazer isso. Por outro lado, é um chip 3D composto por vários níveis, com a Northbridge do sistema em um nível e a memória FAM nos outros. Graças a isso, boa parte dos processos e até threads que executam os processadores em paralelo e de forma coordenada são acelerados, evitando assim o enorme gargalo associado à RAM tradicional.

Há um grande número de aplicativos com desempenho prejudicado, não por falta de velocidade de processamento, mas por falta de velocidade de memória. Colocar uma memória bem mais perto do processador alivia muitos desses problemas e com o salto para os processadores baseados em chips, onde um único processador é separado em várias partes e o uso de novos sistemas de empacotamento permitirá sua implementação no PC.