Eu diria que uma boa regra é exatamente como foi mencionado acima. 2 vezes a memória física. Algo a considerar aqui, embora seja possível usar uma partição de troca menor, e isso será suficiente nas circunstâncias mais normais, se você quiser que este sistema seja sólido, eu seguiria a recomendação de 8 GB. Na verdade, eu recomendo 2 * RAM + 1 MB para que haja absolutamente espaço para trocar 2 cópias inteiras de memória. Isso evita o cenário "jogo de concha", que pode ter repercussões negativas no desempenho. O que isso fará por você é garantir um nível de resiliência caso você encontre um evento extraordinário com seu sistema.
Vi situações em que os aplicativos se comportam mal em ambientes autônomos e, antes que você perceba, seu sistema começa a ficar lento.
Dependendo do que você está fazendo, você pode até mesmo dispensar o arquivo de troca completamente. O espaço extra para o sistema operacional é útil ao executar muitos aplicativos ao mesmo tempo. No entanto, se você pretende executar apenas alguns processos, não é recomendável interagir com a GUI que desabilitar o arquivo de troca.
Mas se você tiver um arquivo de troca, eu sempre uso a fórmula de tamanho abaixo.
[(2 x RAM) + 1 MB] = Swap File Size
Eu também recomendo colocar seu arquivo de troca em um disco separado sempre que possível, pois isso aumentará o desempenho, pois o sistema operacional poderá trocar e devolver ao mesmo tempo que as leituras / gravações do disco de dados.
Espero que isto seja útil.
O Linux pode operar felizmente sem troca, se você tiver RAM suficiente para tudo o que solicita, embora ainda seja uma boa idéia fazer alguma troca, pois às vezes pode obter melhor desempenho quando está perto de encher memória, pressionando algumas não recentemente. coisas usadas em disco liberando RAM para usar como cache / buffer para operações de E / S ativas no momento.
Além disso, ter alguma troca, não importa a quantidade de RAM que você possui, permite uma pequena rede de segurança extra caso um aplicativo se comporte mal e precise de mais RAM do que o habitual, ou você escolhe fazer algo incomum que precisa de muita memória.
Em geral, eu não concordo com o 2xRAM em máquinas modernas. Se você tiver o suficiente para terminar com 8 GB de páginas trocadas para o disco, é provável que seu sistema tenha uma velocidade completamente inutilizável nesse ponto. Mesmo 1xRAM pode ser um exagero em muitos casos IMO. Lembre-se de que você pode adicionar espaço de troca na forma de um arquivo a qualquer momento, para adicionar mais troca posteriormente, se achar necessário. por exemplo, para adicionar um GB extra de troca:
e para removê-lo (uma vez que não é mais necessário):
(lembre-se, porém, que a troca de arquivos é um pouco mais lenta que a direta para uma partição ou volume lógico, pois você tem sobrecarga do sistema de arquivos e maior potencial de fragmentação a considerar)
A hibernação, ou seja, em laptops / netbooks, pode complicar um pouco as coisas, pois o IIRC Linux armazena o estado da memória no espaço de troca, então você definitivamente precisa mais do que o tamanho da sua RAM como troca se planeja usar a hibernação (e eu não sei se isso precisa ser de troca baseada em partição / volume ou se o arquivo com base puder ser usado - certamente precisará ser algo mencionado,
fstab
que pode ser visto muito cedo no processo de inicialização em que o disco ram inicial está em uso e sua raiz real ainda não está montada )Esses pontos podem ser discutidos. Se você tiver terabytes de armazenamento em disco, alocar 8 GB para trocar provavelmente será muito pouco sofrimento!
fonte
De acordo com o Ubuntu SwapFAQ, aqui o cálculo é 2 * MB de RAM. Então, neste caso, 8GB. Realisticamente, porém, você não deve precisar de mais de 2 GB.
fonte
Ainda é necessário reservar uma partição para troca? Eu pensei que hoje em dia isso também funciona em um arquivo na partição do sistema. Suponho que você possa alterar facilmente o tamanho se inserir mais memória ou se achar que não precisa de muito espaço de troca.
Edit : Aqui está como isso pode ser feito (a partir do kernel do linux 2.6).
fonte
Antes de tudo, se você quiser usar a hibernação, etc, precisará de uma partição de swap pelo menos do tamanho da sua RAM.
em segundo lugar, lembre-se de que a RAM é dimensionada em múltiplos de 2 e não em 10, portanto, declarar 1 GB de espaço para 2 sticks 512MiB de RAM (cada
536870912 bytes
) não é suficiente, pois são apenas 1000 MB (1000000000 bytes) e não 1024MiB (1073741824 bytes
) como necessário ... em vez disso, você precisará pegar uma calculadora e fazer1024 * 1024 * 1024 * # of GiB
leia também: http://en.wikipedia.org/wiki/Binary_prefix e
man 8 units
na sua caixa Linuxportanto, para quatro GB de RAM, sua troca precisa ser pelo menos
4294967296 bytes
ou4295 MB
usar todos os recursos.como é muito grande, provavelmente deve ser suficiente para todas as suas necessidades
fonte
Pela minha experiência pessoal com o Linux, soube que a fórmula convencional de 2X o tamanho da RAM serve apenas para sistemas mais antigos com 1 GB - 2 GB de RAM.
No entanto, para sistemas mais novos, com mais Gigs de RAM, sugiro o seguinte
Se a RAM for <2 GB, troque de espaço = 2 x RAM
Se RAM = 2 GB - 8 GB, então troque de espaço = RAM
Embora eu recomende usar a quantidade original de RAM se a memória tiver pelo menos 4 GB. Isso deve manter o sistema estável e eficiente.
Se RAM = 8 GB - 64 GB, troque de espaço = 0,5 x RAM
fonte
O Ubuntu SwapFaq provavelmente responderá a muitas de suas perguntas. Com quantidades maiores de RAM, você pode se beneficiar da alteração da "troca" padrão, conforme descrito neste artigo.
fonte