Reduza o uso do SWAP e melhore o desempenho do Linux.

A memória virtual ou SWAP é um recurso fantástico, que permite rodar mais aplicativos e lidar com arquivos muito maiores.
O Ubuntu abusa deste recurso e você pode por um limite nisto, para melhorar a performance do seu sistema

Na lista de coisas que se pode fazer para melhorar o desempenho do Linux, este é um dos primeiros itens — principalmente em equipamentos com pouca memória RAM (1 Gb ou menos).
Algumas distribuições Linux mais parrudas, como é o caso do Ubuntu, acabam por fazer uso muito intenso do acesso ao disco rígido, o que contribui consideravelmente para a lentidão do sistema como um todo.

Neste post, vou mostrar como reduzir o uso da memória SWAP no seu sistema.
Comumente, separamos uma partição exclusiva, no disco rígido, para a memória SWAP o que é uma boa prática.
Quando o sistema começa a fazer uso excessivo deste recurso, começa também a ficar mais lento, uma vez que o tempo de acesso ao disco rígido é milhares de vezes maior que o tempo de acesso à memória RAM.

A propensão do Ubuntu a usar o SWAP é determinada por um valor — quanto menor este valor, mais tempo o sistema irá demorar antes de começar a fazer uso deste recurso.
A variável (do sistema) que contém este valor, é a swappiness — e pode ir de 0 a 100 (sim, é um percentual).

No Ubuntu e no Red Hat, o valor padrão do swappiness, é 60, o que pode ser muito alto para a maioria dos usuários normais do desktop. Especialistas indicariam este número como mais adequado para servidores.
No desktop, este número pode seguramente ser reduzido. Vou mostrar como.
No Ubuntu, esta variável fica armazenada no arquivo de sistema

/proc/sys/vm/swappiness.

Você pode ver o valor de swappiness do seu sistema com o seguinte comando:

cat /proc/sys/vm/swappiness

O QUE DIZ A DOCUMENTAÇÃO DO RED HAT

«O swapiness é um valor de 0 à 100 que controla o grau para o qual o sistema altera. Um valor alto dá prioridade ao desempenho do sistema, alterando os processos de forma agressiva fora da memória física quando eles não estão ativos. Um valor baixo dá prioridade à interação e evita processos de alteração fora da memória física o quanto de tempo for possível, o que diminui a latência de resposta. O valor padrão é 60.»

Qual o valor mais indicado para swappiness?

Você pode seguir a regra geral, ditada por outros, ou pode fazer seus testes e chegar ao melhor número por si próprio. Só tenha cuidado com os extremos, pois você pode acabar com um sistema inoperante (ou quase).
A minha recomendação é de que você opte por um valor baixo, entre 10 e 20. Isto fará com que o sistema use menos a memória virtual (SWAP) e tente se virar com o que tem, na memória física.
Veja, a seguir, como tornar a mudança do valor do swapiness permanente.

Torne a mudança permanente

A simples alteração do arquivo /proc/sys/vm/swappiness, é inócua e não produz resultado algum.
Se você conseguir alterar este valor, o sistema o retornará ao padrão, assim que for reiniciado.
Você precisa alterar o arquivo /etc/sysctl.conf.
Abra-o com o seu editor de textos favorito (eu vou usar o nano):

sudo nano /etc/sysctl.conf

Agora, copie e cole o seguinte código ao final do arquivo:

#
# Reduz o uso de SWAP
vm.swappiness=10
# Melhora a gestão de cache
vm.vfs_cache_pressure=50

Em seguida, salve e saia do editor.
Reinicie a máquina e veja se houve melhora.

Conclusão.

O uso do SWAP é para situações extraordinárias, quase “emergenciais”. Não faz sentido, portanto, usar memória virtual na maioria dos casos.
Se a carga de trabalho é grande, você deve planejar a aquisição de mais memória física, em vez de resolver (mal) o problema com o uso de memória virtual.

Até a próxima.

zRam, no Linux para melhorar o desempenho do sistema.

Ative o zRam, no Linux para melhorar o desempenho do sistema.

O que é ZRAM?

O ZRAM é um utilitário relativamente conhecido dos usuários Linux, ele permite um melhore gerenciamento de memória em relação a partição de SWAP ele cria um dispositivo de bloco na memória RAM que funciona como um unidade de disco virtual, mas é comprimido e armazenado na memória ao invés de usar a partição de swap (que é mais lenta), permitindo uma troca de dados rápida aumentando a quantidade de memória disponível antes que o sistema inicie a troca com o disco. O objetivo é ganhar desempenho, principalmente em computadores com pouca memória.

Se você tem 2 Gb ou menos de espaço na memória RAM, o zRam pode ajudar a melhorar o desempenho do seu sistema.
O zRam é fácil de instalar — trata-se de um módulo do kernel que, uma vez ativado, cria blocos de dispositivos baseados na RAM, que funcionam como swap. Dados armazenados neste local são comprimidos na própria memória do sistema.
O uso deste módulo, que era chamado antigamente de compcache, acaba promovendo economia considerável de memória mas, por outro lado, aumenta a carga sobre o processador (compressão/descompressão).
Isto posto, você só irá se beneficiar do uso do zRam em aplicações que consumam muita memória e pouco processamento. Se suas aplicações usam intensivamente o processador e poucos recursos de memória, você pode experimentar uma queda na performance do seu sistema.

Obs.: A partir do kernel 3.14, o módulo ZRAM já está habilitado, portanto a instalação só é necessária para kernels anteriores.

Como instalar zRam no Ubuntu

O zRam está integrado ao kernel Linux, desde a versão 3.2 — portanto, já está incluído nas versões do Ubuntu 12.04 ou acima.
Nas versões mais novas do Ubuntu é muito fácil instalar o zRam, via apt-get.

Abra um terminal (Ctrl + Alt +T), e forneça o seguinte comando:

sudo apt-get install zram-config

Isto é o suficiente.
Desconheço qualquer recomendação dos desenvolvedores no sentido de ter que reiniciar o computador, após a ativação do zRam — portanto, o reboot é opcional.

Como verificar se o zRam está ativo

Se quiser verificar se o zRam está ativo, use o comando dmesg em conjunto com o grep:

dmesg | grep -i zram

Outra forma de verificar é com o seguinte comando:

cat /proc/swaps

Se o zRam aparecer no resultado, deste jeito, é por que está ativo:

Filename           Type               Size            Used              Priority
/dev/sda1          partition          2076668    2724               -1
/dev/zram0        partition         513056      240                 5
/dev/zram1        partition         513056      244

Seleção_008

Como desinstalar o zRam

Para desativar e desinstalar o zRam, proceda assim, no terminal:

sudo dpkg --purge zramswap-enabler
sudo dpkg --purge zram-config

Até a próxima.