Qual a diferença entre a RAM gráfica e a RAM do sistema?

66

Eu sei que uma GPU e uma CPU são coisas fundamentalmente diferentes e por que ambas são péssimas em fazer o trabalho da outra. Mas o que não entendo é por que a RAM padrão do sistema sempre foi uma geração atrás da RAM usada nas placas de vídeo.

Pelo que entendi, ambos são apenas tipos diferentes de DRAM, mas me parece que as diferenças podem ser abstraídas pelo controlador de memória inserido no silício da CPU e da GPU. O padrão atual para a RAM do sistema é o DDR4, mas as placas de vídeo estavam usando o GDDR4 por anos antes de o DDR4 se tornar uma coisa para os desktops. Agora, as placas de vídeo são fornecidas com HBM RAM (GDDR5?), Mais rápida que a memória do sistema DDR4.

Por que não estamos usando o mesmo tipo de RAM para ambos? O que os torna diferentes?

Wes Sayeed
fonte
2
what I don't get is why standard system RAM has always been a generation behind the RAM used on video cards.- Eles não são. O GDDR5 é basicamente o DDR3 otimizado para largura de banda (à custa da latência); se dependesse de mim, o GDDR5 teria o nome de GDDR3.
hanshenrik

Respostas:

68

Mas o que não entendo é por que a RAM padrão do sistema sempre foi uma geração atrás da RAM usada nas placas de vídeo.

A especificação GDDR, embora baseada no padrão DDR, tem sua própria especificação de hardware. A especificação DDR está tecnicamente à frente da especificação GDDR, uma vez que o GDDR é baseado na especificação DDR anterior (na maioria das vezes, exceto quando se baseia na especificação GDDR anterior ).

Um dos motivos pelos quais existe uma falsa crença de que o GDDR está à frente do DDR é que houve várias iterações do padrão GDDR baseadas no DDR3. Esse também foi o caso do GDDR2, sendo que sua especificação possui elementos de design do DDR e do DDR2.

No entanto, é importante observar que essa memória GDDR2 usada nas placas gráficas não é DDR2 por si só, mas sim um ponto intermediário inicial entre as tecnologias DDR e DDR2. Usar "DDR2" para se referir a GDDR2 é um nome impróprio coloquial.

Fonte: SDRAM DDR2

Da mesma forma, GDDR4 e GDDR5 receberam elementos de design do DDR3. Obviamente, o GDDR5 é um design aprimorado do GDDR, quando comparado ao GDDR4.

Como seu antecessor, o GDDR4, o GDDR5 é baseado na memória SDRAM DDR3, que possui o dobro das linhas de dados em comparação com o SDRAM DDR2. O GDDR5 também usa buffers de pré-busca com largura de 8 bits semelhantes ao GDDR4 e DDR3 SDRAM.

Fonte: GDDR5 SDRAM

Pelo que entendi, ambos são apenas tipos diferentes de SDRAM, mas me parece que as diferenças podem ser abstraídas pelo controlador de memória inserido no silício da CPU e da GPU.

Os dois padrões são realmente muito diferentes. A diferença no número de bits que podem ser transferidos em uma linha de dados é uma dessas diferenças. A especificação GDDR não é compatível com os processadores Intel e AMD x86. A especificação GDDR é capaz de transferir mais bits, por estar conectada a uma conexão totalmente diferente, principalmente PCI-e (dentro da especificação das várias revisões deste padrão).

O padrão atual para a RAM do sistema é o DDR4, mas as placas de vídeo estavam usando o GDDR4 por anos antes de o DDR4 se tornar uma coisa para os desktops.

Isso se deve ao fato de o GDDR4 ser baseado na especificação DDR3, não na especificação DDR2. O padrão DDR3 não foi ratificado até 2005. Não vimos produtos até 2007 devido a necessidades de mercado completamente diferentes. O GDDR4 foi anunciado em 2005 e não viu produtos até 2007. Você pode ver que, embora tenham nomes diferentes, os produtos reais foram lançados juntos.

Agora, as placas de vídeo são fornecidas com HBM RAM (GDDR5?), Mais rápida que a memória do sistema DDR4.

O (s) padrão (s) atual (is) de GDDR são realmente GDDR5X e GDDR6. HBM (High Bandwidth Memory) é um processo de fabricação Hynix e Samsung DDR.

Por que não estamos usando o mesmo tipo de RAM para ambos?

Os dois padrões não são compatíveis entre si.

O que os torna diferentes?

O que os diferencia é o processo de fabricação e as especificações. Embora o GDDR se baseie na especificação DDR, o GDDR não está realmente à frente do DDR, embora haja enormes lacunas de desempenho entre os dois padrões neste momento devido à largura de banda disponível à qual o GDDR tem acesso.

Ramhound
fonte
45

A tecnologia subjacente é mais ou menos a mesma, as GPUs apenas aproveitam um barramento de memória muito mais amplo.

As GPUs são mais fáceis de projetar dessa maneira como uma única unidade, onde muitos módulos de memória podem ser conectados diretamente à unidade de processamento através de uma placa de circuito personalizada. Isso permite um barramento de memória muito amplo, geralmente superior a 256 bits. A HBM leva isso adiante com um barramento de 1024 bits.

As CPUs baseiam-se em uma arquitetura muito mais generalizada de especificações de soquetes e placas-mãe; portanto, mais do que os dois canais padrão de 64 bits são tipicamente reservados ao mercado high-end e de servidores.

Também deve ser mencionado que a memória da GPU é ajustada para trocar o desempenho da latência por alta largura de banda - muita escavação e pouca procura. Este não é o caso da memória da CPU, em que baixa latência é desejada para boas velocidades de acesso aleatório.

Robert
fonte
Obrigado pela informação. Embora o @Ramhound tenha fornecido muitos detalhes em sua resposta sobre o que é o GDDR e como ele evoluiu (na verdade não está à frente da RAM do sistema, mas é mais rápido ), estou inclinado a aceitar o seu porque o último parágrafo contém as informações que eu estava procurando (ou seja, oferece uma troca de largura de banda / latência). Você pode expandir isso? A primeira parte da sua resposta não é realmente válida. A RAM do sistema também é conectada diretamente à CPU (assim como as pistas PCIe); portanto, se as CPUs foram projetadas para uma largura de banda mais alta e um barramento mais amplo do GDDR, é isso que estaríamos conectando ao mobos.
21318 Wes Wes
3

Uma característica especial de alguns tipos de RAM gráfica é que eles podem ser acessados ​​por dois sistemas de barramento independentes ou majoritariamente independentes - o que faz com que sejam usados ​​como buffer de quadros (a parte da ram de vídeo em que os pixels enviados para a tela a cada 1/60 ou mais são mantidos em segundo lugar) ou buffers de textura mais fáceis e viáveis, com menos conflitos de acesso e sobrecarga ....

rackandboneman
fonte