Memórias RAM diferentes trabalhando juntas dá ruim?

Fizemos combinações das mais esdrúxulas para entender como isso impacta no desempenho

Tem situações em que o orçamento tava apertado, não deu para comprar toda aquela memória que estava inicialmente nos planos e um slot ficou esperando pelo upgrade. Outros casos acontecem por conta de uma característica do mercado: muitos notebooks e computadores montados trazem a configuração de memória em apenas um módulo - um de 4GB em notebooks de entrada, por exemplo.

Às vezes, seu PC já possui uma memória e a hora de colocar outra chega. Posso colocar uma diferente?

Mas, nasce uma dúvida nessa hora: posso comprar uma memória diferente? Não é fácil achar exatamente o mesmo módulo de RAM, em todas suas configurações, especialmente se você deixou para fazer esse upgrade muitos anos depois de comprar seu computador. Afinal, "dá ruim" ficar misturando memórias diferentes?

A principal resposta para esse problema é: sim, elas vão funcionar. Todas as memórias RAM trabalham dentro das especificações do JEDEC, órgão que aglomera as principais empresas e cria os padrões de engenharia que garantem que toda a indústria consiga trabalhar em conjunto. É assim que uma memória da HyperX liga em uma placa-mãe da Asus com um processador AMD: todos seguem parâmetros básicos comuns.

Memórias diferentes operando no mesmo protocolo funcionam, mas existem impactos no desempenho

Porém, quando você usa memórias assimétricas, temos vários problemas relacionados a variação das configurações e um dos mais problemáticos são os ranks. Memórias se comunicam com o restante dos componentes através de comandos em 64-bit, que podem ser feitos em rank single, dual ou quad, por exemplo. E misturar essas configurações pode deixar as coisas bem confusas.

"Quando se instala um módulo de rank 2 em um canal, são necessários dois carregamentos para salvar e ler informações do módulo em questão. Se for instalado um módulo com rank 1, então apenas um carregamento é necessário no processo. Ou seja, se instalarmos um módulo de rank 1 em um canal e outro de 2 Ranks no outro canal, ao invés de se trabalhar em dual-channel, onde simultaneamente dois carregamentos de 64-bits são enviados e recebidos pelo processador, um canal terá um carregamento de 64-bits e o outro precisará de dois carregamentos, alterando a sincronia, o consumo energético e a velocidade das operações." explica Iuri Santos, especialista em tecnologia da Kingston/HyperX no Brasil. "Se os dois módulos forem instalados no mesmo canal, a situação é ainda pior, pois serão necessários três carregamentos através do mesmo canal para realizar a operação."

Mas, passando esse problema e usando, por exemplo, duas memórias de ranks semelhantes, ainda há outras variantes como timings, capacidadefrequências que também podem interferir no desempenho.  "Quando misturamos duas memórias de performance diferente, como por exemplo uma DDR4-3000MHz e uma DDR4-3200MHz, ou DDR4-3000MHz CL14 com DDR4-3000MHz CL16, o sistema pode ficar estável apenas se iniciado na configuração com menor frequência e timings mais altos", exemplifica a representante da G.SKILL com quem conversamos. "Você pode ajustar na BIOS as frequências e os timings o quanto quiser. Mas, a performance, estabilidade e a compatibilidade talvez não sejam completamente ideais ou otimizadas", completa.

Sistema utilizado

Para os testes, usamos a seguinte bancada:

- AMD Ryzen 7 3800X
- Aorus X470 Gaming 7 WIFI
- Nvidia GeForce RTX 2080 Ti Founders Edition
- Thermaltake Lite Power 650W

É bom destacar que diferentes sistemas terão impactos maiores ou menores dependendo da dependência de memórias rápidas. Processadores Ryzen da série 1000 e 2000, ou gráficos integrados, têm uma dependência mais direta de sua performance vinculada a velocidade e eficiência das memórias.

Nós testamos os seguintes cenários: 1) começamos com um dual-channel de duas memórias idênticas da G.Skill de 8GB, 2) experimentamos misturar uma dessas memórias com duas de 4GB e mais lentas, 3) tentamos combinar uma memória de 8GB com uma de 4GB formando 12GB ao total e, por fim, 4) também gostamos de viver perigosamente e ligamos quatro memórias diferentes em capacidades, marcas e velocidades pra ver no que que dá.

- Combinação 1: 2x 8GB G.SKILL Trident-Z RGB 3200MHz
- Combinação 2: 1x 8GB G.SKILL Trident-Z RGB 3200MHz + 2x 8GB HyperX FuryX 2400MHz
- Combinação 3: 1x 8GB G.SKILL Trident-Z RGB 3200MHz + 1x 8GB HyperX FuryX 2400MHz
- Combinação 4: a gente não respeita nada nem ninguém: 1x 8GB G.SKILL Trident-Z RGB 3200MHz + 1x 8GB HyperX FuryX 2400MHz
+ 1x 8GB TeamGroup T-Force Vulkan 2666MHz + Team Xtreem Gold DDR4 16GB 4000MHz

Com essas combinações, tivemos o seguinte efeito: as memórias de 2400MHz da HyperX conseguiram opera em 3000MHz combinadas com o módulo da G.SKILL. Mas, isso não é "mérito" da combinação: essas memórias já se mostraram bastante capazes de subir frequências no passado. Então, o sistema acabou limitado mesmo pela capacidade desses módulos de atingir valores mais elevados.

Já a nossa "salada de frutas" da combinação 3 conseguiu, no máximo, 2666MHz com CL16. Aqui, novamente, temos uma memória se sobressaindo: a memória Pichau Gaming é feita para operar em CL16 e 2666MHz, mas conseguiu operar em um CL mais baixo de forma estável (junto com o restante da galera toda).

Na combinação de memórias, a mais lenta determina a configuração que o sistema ficará estável

Mesmo com essas pequenas variações fora das especificações de algumas das memórias, o sistema é claramente limitado pela performance da memória mais ineficiente, puxando para baixo as frequências e para cima os timings.

Vídeo

Testes

Colocamos em ação uma rotina de testes que envolvem desde softwares sintéticos de medição de performance das memórias, passando por aplicações de render de alto peso no processador e também games. Comentamos os resultados logo abaixo dos gráficos:

Começando pela parte mais sintética. É bastante evidente a degradação na performance à medida proporcional que nossa combinação de memórias fica mais diversa. Os tempos de leitura, escrita e latências vão piorando na proporção que tornamos nosso sistema mais diverso, e as memórias vão operando em configurações piores para conseguir estabilidade.

Combinações mais variadas vão claramente reduzindo a performance do kit...

Mas essa piora nos dados sintéticos nem sempre impactam no "mundo real", ou seja, em aplicações. Blender e V-ray fizeram pouquíssimo caso das mudanças, mostrando que a velocidade das memórias está longe de ser um fator crucial para o desempenho nesses testes. Em games, a influência foi um pouco mais perceptível, com Assassin's Creed Odyssey perdendo um pouco de performance, mas algo inferior a 10%. Ou seja, um impacto discreto.

...mas o impacto nem sempre é claramente evidente em algumas aplicações

A grande diferença aconteceu no Adobe Premiere. O tempo para renderização de um projeto mudou de forma bastante evidente ao longo dos testes, e a face mais "sombria" das combinações de memórias assimétricas deu as caras. O sistema crashou quando combinamos 4 memórias diferentes, e isso torna bastante evidente o maior problema de combinar memórias variadas. Não é performance. É estabilidade.

Quanto mais diversa nossa combinação, pior o funcionamento do sistema, com mais dificuldade de achar uma configuração estável e cada vez mais travamentos, telas azuis, softwares fechando e problemas em geral. O Adobe Premiere simplesmente ficar inutilizado com a junção de 4 memórias diferentes foi só o extremo de um conjunto de pequenos problemas que foram surgindo gradativamente junto com a "mistureba" que íamos fazendo.

O problema maior não é performance: combinar memórias muito diversas vai progressivamente piorando a estabilidade do sistema

Então, como proceder? Em uma escala da melhor solução para a pior, ficaria assim:

1 - você vende sua memória atual e compra um kit com múltiplas memórias idênticas;
2 - não sendo possível 1, você tenta comprar uma memória o mais parecida possível com a já presente em seu PC;
3 - não encontrando um modelo mais parecido, ainda assim faça o upgrade de memórias. 

Apesar de não ser o mundo ideal, o pior cenário é mesmo ter memória faltando no seu PC. Um bom exemplo é o que aconteceu no Acer Aspier com Ryzen 3 que testamos no Mundo Conectado. Sua configuração em 4GB estrangulava o chip da AMD, e o upgrade que fizemos foi crucial para ganhos de desempenho.

Memórias assimétricas não são o indicado, mas funcionam frente aos problemas muito mais graves que a falta de memória RAM causa em um sistema, especialmente naqueles que usam gráficos integrados. Dentro do possível, não torne a combinação muito diversa, mas mesmo considerando as possíveis perdas de performance, isso ainda é melhor que ter que lidar com um PC que não tem RAM o suficiente para operar.

Assuntos
  • Redator: Diego Kerber

    Diego Kerber

    Formado em Jornalismo pela Universidade Federal de Santa Catarina (UFSC), Diego Kerber é aficionado por tecnologia desde os oito anos, quando ganhou seu primeiro computador, um 486 DX2. Fã de jogos, especialmente os de estratégia, Diego atua no Adrenaline desde 2010 desenvolvendo artigos e vídeo para o site e canal do YouTube