A inclusão de dois processadores aumenta a memória RAM máxima?

16

Se o E3-1285 v6 suportar no máximo 64 GB de RAM, o uso de uma placa-mãe de soquete duplo aumenta a memória máxima? Acho que não, mas gostaria de saber o motivo. Minha lógica diz que, se a RAM for compartilhada, os dois processadores deverão poder endereçar toda a RAM disponível e, portanto, ela também será limitada a 64 GB. Alguma explicação técnica para isso?

kankamuso
fonte

Respostas:

32

Nas CPUs modernas, o controlador de memória é integrado diretamente à CPU, enquanto antigamente a memória era acessada pela CPU através de um sistema de barramento. O sistema de barramento tinha a vantagem de que o acesso à memória era uniforme, o que ainda é o caso em CPUs de soquete único.
Agora, entrando em sistemas de soquete duplo, cada CPU possui memória local dedicada e a memória da outra CPU pode ser acessada indiretamente pelo QPI, que é, em palavras simples, um link entre as duas CPUs. Isso é chamado NUMA (acesso não uniforme à memória).

Bem, juntando as coisas. Se você tiver uma segunda CPU, poderá aumentar a quantidade total de memória do seu sistema, mas também precisará de uma CPU capaz de executar no modo de processador duplo. O IIRC da série E3 não é compatível com soquete duplo, E5 é compatível com soquete duplo e E7 com soquete quádruplo.

Thomas
fonte
Muito obrigado pela sua explicação clara. Meus estudos de ciência da computação estão atrasados ​​no progresso do mercado em arquitetura de computadores. Um colega me disse para tentar criar um sistema Xeon com GPU integrada (para openCL significa) e 128 GB ... e é simplesmente impossível :-(.
kankamuso
4
Você pode fazer isso, você só precisa de uma CPU com controladores de memória para endereçar mais memória. As máquinas Xeon E5 possuem 4 canais de memória e você pode instalar até 8 módulos de 32 GB cada por CPU.
Andreas Rogge
Às vezes, isso é escrito de forma criptográfica apenas como 1S .
chrylis -on strike-
11
@kankamuso Uma GPU discreta pode ser bastante útil, no entanto.
JAB
2
@kankamuso Uma GPU Intel integrada não será útil para o OpenCL. Você obterá melhor desempenho mesmo em uma GPU discreta básica.
21818 duskwuff
10

Antes de tudo, o E3-1285v6 não oferece suporte a vários soquetes; portanto, para aumentar o número de CPUs no sistema, você precisará de uma CPU diferente.

Enquanto as CPUs AMD e Intel em modo longo usam ponteiros de 64 bits, as CPUs disponíveis hoje são limitadas a 48 bits. Assim, é possível endereçar até 256 TB de memória e toda CPU compatível com x86_64 pode endereçar essa quantidade de memória.

No entanto, há outra limitação: o controlador de memória integrado à CPU. Esse controlador de memória possui um número limitado de canais (no caso de sua CPU: 2), o que significa que ele pode conversar com dois módulos de memória simultaneamente. Os canais podem alternar entre vários módulos (geralmente 2), para que você possa conectar dois módulos por canal, o que totaliza 4 módulos no seu caso.

Se você tiver uma placa de soquete múltiplo com várias CPUs instaladas, terá um controlador de memória por CPU; portanto, no final, você duplicará a memória física instalável (que não está realmente relacionada à memória endereçável) instalando uma segunda CPU.

Andreas Rogge
fonte
Isso também é demais! Explicação muito interessante para mim.
kankamuso
8
48 bits é o limite do espaço de endereço virtual, não físico. É inconveniente para o kernel, mas é possível suportar mais memória física do que pode ser mapeada em um espaço de endereço virtual plano (tivemos isso com PAE + de 32 bits por um tempo). O formato da tabela de páginas x86-64 já suporta endereços físicos de até 52 bits , embora as CPUs reais suportem menos. Os detalhes do controlador de memória são geralmente importantes aqui, não apenas a largura interna do endereço físico.
Peter Cordes
@ PeterCordes: vários processadores não possuem todas as linhas de endereço implementadas, como o E5-1620v3 em que estou executando atualmente, que tem suporte de endereço físico de 46 bits.
PlasmaHH
1

Se o E3-1285 v6 suportar no máximo 64 GB de RAM, o uso de uma placa-mãe de soquete duplo aumenta a memória máxima?

Sim, o uso de várias CPUs aumenta a memória máxima, no entanto, sua CPU não suporta várias placas-mãe de soquete.

Um colega me disse para tentar construir um sistema Xeon com GPU integrada (para openCL significa) e 128 GB ... e é simplesmente impossível :-(

De fato, as peças de baixo custo (soquete 115x) têm a opção de GPUs integradas (presumivelmente porque são derivadas dos mesmos projetos básicos que as peças de desktop comuns), mas não têm suporte para vários soquetes e possuem um controlador de memória que suporta apenas quatro módulos (dois canais com dois módulos cada) de memória não registrada. Com a tecnologia atual que limita você a 64 GB.

As partes mais avançadas têm melhores controladores de memória com mais canais e suporte para tipos de memória que permitem mais e maiores módulos por canal (512 GB por soquete é possível) e, em alguns casos, suporte para configurações de vários soquetes, mas eles não possuem GPUs integradas.

Peter Green
fonte