Canal duplo em RAM: desempenho de CPU e iGPU

Canal duplo em RAM: desempenho de CPU e iGPU

Ao comprar um motherboard, um computador pré-fabricado ou um laptop, um ponto importante é o desempenho do RAM memória e isso não se limita apenas à velocidade desta, mas para verificar se temos uma configuração Dual Channel ou não. que não tê-lo significa perder completamente o poder.

Ao comprar uma placa-mãe você deve ter ouvido os termos Canal único e canal duplo em relação à memória RAM que será instalada nele. E muitos de vocês leram e ouviram como ter um único canal de memória é prejudicial para o desempenho de nosso PC em comparação a ter um canal duplo.

O que é um canal de memória?

Canal duplo

A comunicação entre a RAM e qualquer processador é algo que embora seja totalmente invisível para usuários e programadores, realmente não é algo trivial. É um processo no nível do hardware em que o CPU tem que seguir uma série de etapas estrategicamente ordenadas para solicitar dados armazenados na memória por meio de uma série de etapas em um momento específico.

O problema surge quando o IMC, controlador de memória integrado, que é a peça do hardware de qualquer processador responsável por acessar a memória, fica saturado e isso ocorre quando há muitos pedidos. É como um lojista diante de uma fila muito grande de clientes que precisa atender um por um. O importante é que, à medida que a lista de solicitações aumenta, há mais demora no atendimento aos clientes no final da fila. Se os clientes forem pedidos à memória pela CPU, isso fará com que o IMC fique completamente saturado.

Qual é a solução? Bem, o mais simples não é ter um, mas dois CMIs diferentes, que se encarregam de administrar paralelamente as solicitações in-memory. O usual é que para cada interface externa à memória haja um IMC associado fazendo os acessos à RAM atribuída ao processador.

Canal único versus canal duplo

Até o advento do DDR5, onde cada módulo suporta dois canais de memória de 32 bits em vez de uma memória de 64 bits, em geral podíamos contar o número de canais disponíveis pelo número de módulos DIMM que uma placa-mãe suportava dividido por dois, de tal que podemos identificar uma placa-mãe Monocanal pelo fato de ter apenas 2 slots DIMM e uma Dual Channel com 4.

Para facilitar o usuário, geralmente são identificados por cores: dois slots vermelhos e dois pretos, por exemplo. Desta forma as placas-mãe costumam ter códigos de cores nos slots de memória para marcar onde colocar os módulos DIMM da maneira correta de colocar o RA; nos soquetes apropriados.

A questão é que, se tivermos apenas um módulo no computador, isso significa que teremos apenas um canal de transmissão de 64 bits por ciclo de clock da memória. No entanto, se tivermos dois módulos nos soquetes correspondentes, a largura de banda dobrará. Realidade? O aumento de desempenho está longe de ser o dobro. Principalmente se tivermos uma placa-mãe projetada para usar um único canal de memória, já que nesse caso será usado um único IMC para comunicação com a memória. Exceto, é claro, como dissemos do DDR5 lançado recentemente, onde eles usam dois canais de memória por módulo.

Como posso saber qual configuração tenho?

Memória CPU-Z

Para verificar se a configuração do nosso PC é Single ou Dual Channel, bastam programas como o CPU-Z, onde na aba Memory podemos verificar diretamente sem ter que abrir o nosso computador. Aqui temos que acrescentar um detalhe, muitos dos notebooks com memória DDR4 e inferior suportam Dual Channel, mas como eles têm apenas um módulo instalado eles funcionam em Single Channel.

Portanto, se você tem um laptop ou um PC pré-fabricado e a CPU-Z resulta em uma configuração de canal único, não se desespere, é possível que você possa remediar isso instalando outro módulo de memória na placa-mãe do seu computador e obter, assim, um bônus de desempenho adicional.

Por que o desempenho não é duplicado?

Temos que partir da ideia de que quando falamos em largura de banda, estamos realmente falando de um limite teórico que consiste em que 100% do tempo de transmissão dos dados. A realidade é que a RAM não funciona assim e há um período de acesso para determinar qual coluna e linha de memória o processador deseja acessar onde os dados não são enviados e também temos que levar em consideração que as solicitações são feitas pelo IMC integrado na CPU em vez dos núcleos da mesma.

O uso do controlador de memória integrado é para que os núcleos não tenham que esperar o tempo para a RAM responder a eles, esses tempos de inatividade são perda de desempenho e, portanto, a necessidade do IMC. O facto é que ao nível do processamento do CPU, ter uma memória Dual Channel nunca irá duplicar o desempenho porque é uma taxa teórica, um ideal que devido a diferentes limitações nunca será alcançado.

Portanto, apesar de dobrar a largura de banda teórica, o aumento real de desempenho chegará a 100%, mas não chegará se usarmos um único canal de memória. O que está claro é que sempre ter memória em Dual Channel sempre dará mais desempenho do que ter em Single Channel, o que significa que uma placa-mãe com uma configuração de módulo limitada não é limitada apenas em capacidade de expansão, mas também em desempenho.

Desempenho de iGPU de canal duplo

IGPU de canal duplo único

As GPUs, ao contrário das CPUs, são processadores de throughput, o que significa que seu desempenho dependerá da largura de banda e, portanto, da quantidade de dados que podem receber. No caso de gráficos integrados, eles têm um desempenho muito fraco com PC RAM em comparação com suas contrapartes na forma de placas de vídeo, mesmo com a mesma configuração. Temos que levar em consideração que nos PCs as GPUs têm um espaço de endereçamento diferente daquele da CPU, então eles recebem uma parte da memória que a CPU não pode acessar.

O problema surge quando a CPU e GPU compartilhar o IMC para acessar a memória e pode-se pensar desde o início que o tempo de acesso à RAM equivale ao tempo de acesso da CPU mais o da GPU, mas não é o caso, a realidade é diferente. Uma vez que a contenção é criada, o que causa tempo de inatividade de acesso por ter que alterar continuamente o IMC de contexto. Isso é mortal em face do tempo de acesso da CPU, então a CPU tem a garantia de um tempo mínimo de acesso em cada canal de memória e o resto é deixado para a GPU integrada.

Felizmente, as GPUs não são vulneráveis ​​à latência, mas são vulneráveis ​​à largura de banda. Isso significa que em uma configuração Dual Channel, se usarmos um iGPU para renderizar um jogo, obteremos o dobro de desempenho do que em Single Channel, já que o chip gráfico recebe metade dos dados com os quais trabalhar.