A regra de usar o dobro da RAM como swap era comum em tempos onde a memória RAM era um recurso mais escasso.
A ideia era garantir que o sistema tivesse espaço suficiente para continuar funcionando mesmo quando a memória RAM estivesse completamente ocupada.
Antigamente, os computadores tinham pouca memória RAM, e o swap era essencial para evitar travamentos.
Dobrar a quantidade de swap garantia uma margem de segurança para lidar com picos de uso de memória.
Ainda é válida?
Hoje em dia, a memória RAM é mais barata e os computadores possuem quantidades significativas de RAM.
Os sistemas operacionais modernos, como o Linux, são mais eficientes em gerenciar a memória, reduzindo a necessidade de swap.
Em servidores e máquinas virtuais, onde a carga de trabalho pode variar muito, o swap pode ser útil para o correto funcionamento dos aplicativos.
Então?
Não há uma regra rígida. A quantidade ideal de swap varia de acordo com o hardware, o sistema operacional e o perfil de uso. Se você tem muita RAM, pode não precisar de swap ou até mesmo dispensá-lo.
Utilize os vomandos free e vmstat para monitorar o uso do swap e ajustar a configuração se necessário.
E na hibernação?
A hibernação no Linux é um recurso que permite que você “congele” o estado atual do seu sistema e salve-o num arquivo em disco.
Quando você religa o computador, ele carrega esse arquivo e volta exatamente para onde você parou, como se não tivesse sido desligado.
Ao hibernar, o Linux copia todo o conteúdo da memória RAM (onde os programas em execução estão armazenados) para um arquivo de hibernação no disco.
Após salvar o estado, o computador é desligado completamente, consumindo praticamente nenhuma energia.
Ao religar o computador, ele lê o arquivo de hibernação e restaura todos os programas e configurações para o estado em que estavam antes da hibernação.
Você pode continuar trabalhando exatamente de onde parou, sem perder nenhum dado ou progresso.
O arquivo de hibernação pode ocupar bastante espaço, especialmente se você tiver muita memória RAM.
A quantidade ideal de swap para habilitar a hibernação, no Linux, não é fixa e depende de diversos fatores.
Com mais RAM, você precisará de mais swap para hibernar todo o estado do sistema. Desktops, servidores e máquinas tem necessidades diferentes.
O kernel Linux pode comprimir a imagem de hibernação, reduzindo a quantidade de espaço em disco necessária.
Para garantir que todo o estado do sistema seja salvo durante a hibernação, é recomendado ter pelo menos a mesma quantidade de swap que a RAM.
Algumas distribuições utilizam a proporção de 2/5 da RAM como padrão, pois a compressão da hibernação pode reduzir significativamente o tamanho da imagem.
Regra geral…
Desconsideraremos os computadores antigos, que ainda estejam em uso, para cálculo da swap. Como regra geral, temos:
O mínimo recomendado é a raiz quadrada da RAM, arredondada para cima. Para incluir a hibernação, some a quantidade de RAM ao valor mínimo (nesse caso, o máximo recomendado é o dobro da RAM). Exemplo:
Com 2GB de RAM:
Mínimo sem hibernação: 2GB
Máximo com hibernação: 4GB
Com 8GB de RAM:
Mínimo sem hibernação: √8 ≈ 3GB
Mínimo com hibernação: 3GB + 8GB = 11GB
Máximo: 16GB
Observe que num SSD de 120GB, por exemplo, com 8GB de RAM e 11-16GB de swap, você “perde” entre 9-13% do espaço em disco (swap + hibernação).
Se tiver 16GB de RAM, pelos cálculos acima, você reservará entre 20-36GB do disco, representando 17-30% deste. Um espaço que o fará pensar muito bem no que instalar.
Uma saída, antes de comprar seu computador, é avaliar o custo benefício de SSD’s/HD’s maiores, reduzindo o valor percentual do espaço necessário para o swap+hibernação.
Mas se tiver um hardware muito limitado ou a expansão for economicamente inviável, atentar para a possibilidade de não utilizar a hibernação.
Conclusão
Nosso objetivo não é dizer quais cálculos são certos ou errados, mas que o tema é complexo e nada definido.
Certamente os seus também são válidos e chegarão a um resultado semelhante ao que mostramos aqui…
…evidenciando que o tema continua interessante e quantas dúvidas persistem, quando se fala da partição swap.