Travamento ao consumo 100% da memoria ram

Meu sistema possui as seguintes configurações:

OS: Arch Linux x86_64
Kernel: 6.5.7-arch1-1
CPU: AMD Ryzen 9 5950X (32) @ 3.400GHz
GPU: AMD ATI Radeon RX 580
Memory: 16 GB

Reinstalei o sistema operacional há algum tempo, porém agora tenho um problema: toda vez que a memória RAM chega perto do consumo de 100%, o computador congela completamente, só voltando com um reboot. Isso tem sido muito prejudicial, pois pode me fazer perder algum trabalho não salvo, e não costumava acontecer.

Alguém sabe como posso solucionar isso?

Obrigado.

Opa, tudo bem?

Você sabe identificar o que está levando a sua RAM ao limite?

Está usando SWAP por acaso? Pode fazer diferença, se estiver, talvez aumentar a SWAP ajude a evitar esse problema.

2 curtidas

O uso do sistema causa isso, container docker etc.

Não tenho uma partição de swap, acho que pode ser isso.

A duvida agora seria de como se criar uma partição de swap.

1 curtida

Você não precisa criar uma partição necessariamente, um swapfile deve dar conta.

Um guia aqui, mas certamente há na Arch Wiki material também.

4 curtidas

O fator de você não ter um arquivo/partição swap é o que faz congelar seu sistema, pois não existe nenhum espaço de troca para memória RAM cheia. Como você usa Arch Linux, recomendo que instale o zram.

1 - Instale o pacote zram-generator;
2 - Crie o arquivo de configuração;
3 - Reinicie o daemon e ative o serviço;
4 - Reinicie sua máquina;

É o que você precisa para ter ele ativo e funcional. Se tudo está correto, ele irá habilitar uma “swap” compactada na RAM com 8 GB, já que ele usa metade da sua RAM física.

1 curtida

:wave:t2:

Eu acredito ser incomum o Arch consumir 16GB de RAM e ainda numa máquina com processador muito forte. Não daria tempo para a RAM ficar cheia devido a velocidade e o poder do processador, mesmo ainda se os 16GB de RAM seja um pente (single channel). Talvez programas de renderização, games conseguiriam mas…

Como o Dio mencionou, checar a RAM, tenta rodar o comando top via terminal quando ligar o computador e deixa ele monitorando o sistema para termos uma idéia de o que está consumindo toda a RAM.

:vulcan_salute:t2:

1 curtida

Ele afirmou que está rodando contêineres Docker. Dependendo do trabalho que está sendo executado e da quantidade de contêineres, isso poderia levar facilmente a um consumo de 16GB de RAM, independentemente do processador.

Para avaliarmos melhor, o colega @tomast13337 precisaria definir exatamente o trabalho realizado. E, além disso, checar o monitor de recursos para identificar e listar os processos que estão usando mais RAM.

É sempre recomendado criar uma partição de swap (ou um swapfile), independentemente da situação. Contudo, dependendo do cenário, a compra de mais RAM pode ser inevitável.

Para uso básico, 8GB é tranquilo demais ainda. Para quem quer jogar os últimos títulos AAA, 16GB são mais que suficientes. Mas tem uma galera que realiza determinados trabalhos que exigem bem mais que isso, rs. :wink:

6 curtidas

Se você desconfia que são os contêineres os culpados, limite seus contêineres:

docker run -m 2g ...

Se você está usando compose:

...
services:
  foo:
    image: img
    deploy:
      resources:
        limits:
          memory: 612m
...

Você pode monitorar os contêineres:

docker stats
5 curtidas

Agradeço pelas respostas e gostaria de informar que criar o arquivo de swap resolveu o problema que estava enfrentando. No entanto, pretendo verificar também as opções relacionadas ao Docker, como sugerido. Agradeço pela ajuda!

2 curtidas

É muito fácil lotar a ram com docker ou abrindo várias máquinas virtuais ao mesmo tempo, ainda mais se configurar a máquina virtual pra usar bastante do sistema. Eu mesmo trabalhava e precisava abrir umas 4 e já lotava, isso com 16 GB de RAM

1 curtida

Mano, qual CPU cooler ou Liquid pra segurar esse monstro ?

Este tópico foi fechado automaticamente 3 dias depois da última resposta. Novas respostas não são mais permitidas.