Por que quantidades desiguais de RAM em cada slot diminuem o desempenho?

12

Esta página descreve as especificações de RAM para muitos dos laptops MacBook. Na seção para meu laptop (13 "Pro Late 2011), diz:

Notas adicionais: Para obter o melhor desempenho, preencha os dois slots de memória, instalando um módulo de memória igual em cada slot.

Esta não é a primeira vez que ouvi falar desse fenômeno e definitivamente não é específico da Apple.

Por que esse é o caso? Além da óbvia diminuição na memória disponível, por que seria pior rodar com 6 GB (1x4 GB + 1x2 GB) do que com 8 GB (2x 4 GB)?

LanceLafontaine
fonte
Primeiro ... Não é um fenômeno que tem a ver com os canais de memória. Segundo, não haveria aumento / diminuição de desempenho entre seus exemplos.
Ramhound 07/10
@ Ramhound, se não houver queda no desempenho, por que esse aviso está no site da Apple?
precisa saber é o seguinte
Eu disse no seu exemplo, se você não estivesse rodando no modo de canal duplo, haveria. Há uma diferença entre perda de desempenho teórico e perda de desempenho real.
Ramhound #

Respostas:

17

Com quantidades iguais de memória nos dois slots, a memória pode ser "intercalada" para que sucessivos pedaços de memória alternem os slots. Dessa forma, os acessos à memória são distribuídos para os dois slots quase perfeitamente, permitindo que a largura de banda seja combinada. Com quantidades desiguais, a memória não pode ser intercalada e deve ser mapeada primeiro para um stick e depois para o outro. Um programa que está acessando um grande pedaço de memória contíguo encontrará quase todos os seus acessos indo para um stick e não haverá combinação de largura de banda.

David Schwartz
fonte
Seu uso (não qualificado) de "intercalado" é confuso para um veterano como eu. A intercalação neste caso é apenas para a atribuição de endereço de memória. Presumivelmente, os módulos de memória também operariam nos modos de canal único ou multicanal (ou seja, N canais executariam seus ciclos de memória simultaneamente). A memória intercalada tradicional apenas sobrepunha seus ciclos (um banco de memória podia iniciar seu ciclo de leitura antes do banco anterior concluir seu ciclo), para obter um ganho de desempenho barato sem adicionar outro canal de memória.
Serragem #
@sawdust "para que pedaços sucessivos de memória slots de alternativas ... permitindo a sua largura de banda para combinar"
David Schwartz
1
Isso faz parte da ambiguidade. "Alternativo" em sentido estático e / ou dinâmico? A memória intercalada tradicional "alternaria" entre os bancos no sentido estático (endereçamento) e dinâmico (ciclo da memória). O multicanal acessaria (dinamicamente) os módulos simultaneamente, em vez de alternar.
sawdust
4

Notas adicionais: Para obter o melhor desempenho, preencha os dois slots de memória, instalando um módulo de memória igual em cada slot.

A provável explicação técnica aqui é que o seu MacBook (placa-mãe) suporta arquitetura de canal duplo e, portanto, requer 2 módulos de memória idênticos. Os benchmarks sugerem um aumento de 5% a 10% no desempenho.

Por que esse é o caso? Além da óbvia diminuição na memória disponível, por que seria pior rodar com 6 GB (1x4 GB + 1x2 GB) do que com 8 GB (2x 4 GB)?

Quando dois módulos de memória não idênticos são usados, a placa-mãe executa os módulos de memória na velocidade do módulo mais lento.

mVincent
fonte