O uso do processador aumenta com 4 GB de RAM instalada

9

Eu tenho um Intel Atom D2700 (Synology NAS DS412 +) com 4 GB de RAM executando o kernel 3.2.30 x86_64. Esta unidade possui um único slot DIMM.

Uma coisa que eu e outros descobrimos é que, ao adicionar um DIMM de 4 GB contra um DIMM de 2 GB, a unidade experimenta um uso significativamente maior da CPU quando está sob carga (por exemplo, aplicativos Java 'pesados', como servidores Minecraft ou transcodificação Plex, etc.) . Muitos usuários descobriram que, quando retornam a 2 GB, todos esses problemas de alta carga desaparecem.

Isso é algo específico do Linux que pode causar isso? Ou isso é um problema com o próprio Atom?

Trevor Seward
fonte
Talvez você possa adicionar qual distribuição você está usando?
21283 Bernhard
Compilação da Synology.
Trevor Seward
Houve alguma alteração no kernel? Você está usando um kernel PAE por acaso?
ffledgling
A Synology geralmente não fornece esses tipos de notas de versão. Não, este é um kernel x86-64.
Trevor Seward
O que top mostra como fonte para a carga adicional? Mais E / S, mais processos em execução? A troca está ativada? Se você tiver processos de execução longa com carga alta, poderá comparar as saídas ao cat /proc/$PID/statuslongo do tempo.
Hauke ​​Laging 27/03/2013

Respostas:

7

Veja a folha de dados do processador Intel Atom® série D2000 e N2000, vol. 1 .

Observe as páginas 32-33 e a tabela 3-24.

O ponto principal é que, enquanto o processador e o controlador de memória suportam 4 GB de RAM total, eles são suportados apenas em blocos de 2 GB, em 2 GB por slot. Como o seu 412+ possui apenas um slot, 2 GB é a sua RAM máxima. Qualquer coisa acima disso provavelmente será imprevisível.

quadruplebucky
fonte
1

tl; dr

Eu acho que o culpado é o módulo RAM incompatível.


Eu li a folha de dados do D2000 (como sugerido por quadruplebucky). AFAIK, a folha de dados não diz nada sobre a limitação do tamanho da RAM em relação a vários slots DIMM. Ele fala sobre as fileiras (ref. Geometria da memória ).

Qualquer pessoa que queira atualizar a RAM no sistema D2000 deve verificar na Tabela 3-24 as configurações de memória suportada . Para um tamanho de memória de 4096 MB, o módulo deve ser:

  • dobro classificado,
  • com 16 chips de densidade de 2 gigabit.

Módulos de memória com a mesma capacidade são fabricados em configurações diferentes, para que você possa obter, por exemplo, um módulo de 4 GB de classificação única usando oito chips de densidade de quatro gigabits, cuja configuração não está listada na tabela - veja este post de iluminação da Kingston .

Dito isso, você deve verificar as especificações para o número exato da peça do seu módulo para ter certeza de que é compatível. Eu instalei recentemente o Patriot PSD34G1333L2S no DS713 + e até agora está apresentando um bom desempenho.

Mr. Tao
fonte
0

Se houver mais memória, a CPU terá mais dados / programas em mãos para trabalhar (ficará ociosa aguardando dados do disco menos tempo); portanto, o uso da CPU deve aumentar, especialmente sob alta carga. A taxa de transferência aumenta? Ou você não mediu isso?

vonbrand
fonte
Não posso dizer que realmente medi além do topo (Busybox, portanto, as opções são um pouco limitadas), mas o desempenho cai significativamente para os aplicativos mencionados acima ao usar 4 GB de RAM, alguns a ponto de serem inutilizáveis. Com 2 GB de RAM, nenhum desses problemas é aparente.
Trevor Seward
O artigo alemão da Wikipedia afirma que os processos de E / S fazem parte da carga. Assim, a carga deve cair com mais RAM. Isso pode ser facilmente verificado por for((i=0;i<20;i++)); do dd if=/dev/sda of=/dev/null skip=$((i*100)) bs=1M count=100 & done. Execute isso e dê uma olhada no topo. No entanto, não sei como a E / S devido à troca afeta a carga e a porcentagem de espera de E / S. Essa queda de desempenho não faz nenhum sentido com esta explicação.
Hauke ​​Laging 27/03/13
0

Um computador SEMPRE tem um gargalo, caso contrário, todos os problemas seriam resolvidos em tempo zero. Quando você removeu o gargalo da garrafa de Memória, o sistema deixou de ter que esperar no disco e, portanto, a CPU se tornou melhor utilizada.

Isso toca em um dos meus ódios de estimação: os populares blogs de busca de sensações e sites de revisão não sabem como fazer benchmarks. Uma CPU 100% utilizada não é uma CPU desperdiçada. O computador perfeito seria capaz de utilizar todos os recursos 100% para todas as cargas de trabalho, mas estamos muito distantes desse tipo de tecnologia. Mas eu discordo.

A menos, é claro, que haja um problema com o gerenciamento de memória em seu sistema operacional, mas isso é muito menos provável.

Johan
fonte
3
Eu acho que há um grande mal-entendido do que está acontecendo aqui. Os aplicativos sofrem um impacto significativo no desempenho com 4 GB versus 2 GB de RAM. Não é que o processador seja "100%" utilizado, é que os aplicativos se tornam quase inoperantes.
Trevor Seward
Talvez as despesas gerais de paginação e alternância de contexto estejam causando isso? Você deve tentar executar um único aplicativo pesado com 2 GB e 4 GB para ver se a taxa de transferência desse aplicativo aumenta. Se isso acontecer, pode ser por causa da alternância de contexto.
ffledgling
3
Troca de contexto devido à memória física disponível adicional?
Trevor Seward
Minha hipótese era que a memória adicional significava que o processador poderia agora trabalhar em mais processos / threads simultaneamente (porque não precisaria esperar na E / S do disco ou trocar espaço) e que mais processos / threads significariam mais alternâncias de contexto. Eu poderia estar muito errado, é claro.
ffledgling
@TrevorSeward, a pergunta diz algo completamente diferente.
vonbrand
0

Existe alguma chance de sua nova RAM ser DDR3-800 e a antiga ser DDR3-1066 (ou que a nova RAM tenha maior latência?

Se sua carga de trabalho tem muitas falhas de cache e atinge a RAM com frequência, a RAM mais lenta pode fazer uma diferença significativa - esse benchmark mostra cerca de 30% de diferença na largura de banda da memória entre -1066 e -800 RAM:

http://www.tomshardware.com/reviews/core-i7-870-1156,2482-5.html

Sua carga de trabalho teria que consumir bastante memória para ver muita diferença.

Johnny
fonte
O DIMM de substituição é KVR1333D3S9 / 4G, no entanto, o Atom só funcionará a 800Mhz.
Trevor Seward
A Intel diz que o controlador de memória D2700 funcionará com DDR3-800 ou -1066 RAM (com a largura de banda de memória máxima correspondente de 6,4 GB / s e 8,5 GB / s). Mas como sua RAM é 1333, ela deve ser reduzida para 1066, o que faz com que minha sugestão seja discutida.
Johnny
0

Eu nunca experimentei isso, portanto, apenas adivinhando: Talvez este seja um problema devido ao fato de o Atom não conseguir endereçar mais de 4G fisicamente (IIRC) e alguma colisão com o espaço de endereço PCI.

Dê uma olhada nos respectivos parâmetros do kernel (mem *) . Eles provavelmente não nos darão uma boa explicação do problema, mas poderão resolvê-lo (ao custo de alguma RAM). Portanto, você pode impedir que o kernel use o MiB x superior. Você pode testar em que borda o problema desaparece. É provável, mas não seguro, que os dispositivos PCI sejam mapeados diretamente abaixo de 4G. Faz sentido verificar isso, mas não sei como fazer isso (talvez por meio de alguma ferramenta da ACPI ou cat /sys/devices/pci0000\:00/0000\:00*/resource).

Hauke ​​Laging
fonte
Como se pode definir o max mem sem acessar os parâmetros de inicialização?
perfil completo de Trevor Seward
0

Você já viu este tópico do fórum da Synology:

http://forum.synology.com/enu/viewtopic.php?f=140&t=55105&sid=32ffe791c14c1a817869f78ec3d4300a&start=15

Pessoalmente, diz que alterar um parâmetro no /etc/rc.d ajuda (é onde o vm.min_free_kybtes é definido com base na quantidade de RAM instalada). Mas isso parece ser mais para uma atualização de 1 GB -> 2 GB, não de 2 GB -> 4 GB.

Outros afirmam que 4 GB não funcionarão, enquanto um indivíduo afirma que um módulo KVR1066D3S7 / 4G (que é de 1066 MHz) funciona bem, enquanto outros com módulos de 1333 MHz como o seu estão vendo problemas.

Não parece haver muita evidência concreta para apontar para uma solução, mas você não é o único a ver uma degradação no desempenho com 4 GB de RAM nesse DS412 +.

Johnny
fonte
1
Sou eu, e não, no final, modificar min_free_kbytes não ajudou.
Trevor Seward
Então eu iria com o cara que disse que o módulo 1066Mhz funcionava, mas as pessoas com os módulos 1333Mhz estão reclamando de problemas - talvez o BIOS da Synology realmente não lide bem com 1333.
31513 Johnny
Esta seria a implementação UEFI da Intel.
Trevor Seward
0

Meu palpite (instruído) é que o cache do processador não suporta mais de 2 GB de RAM, portanto, instalar mais do que isso faz com que o cache seja desativado, causando um impacto significativo no desempenho. Também é uma CPU quad core, portanto, um único aplicativo encadeado só pode usar no máximo 25% da CPU total, e é por isso que não aumenta depois de adicionar RAM.

psusi
fonte
Esse é um bom pensamento. Alguma maneira de saber se o cache foi desativado na distribuição?
Trevor Seward