Habilitando ZSWAP + LZ4

editado 21 de janeiro em Dicas e Truques

ZSWAP


ZSwap é um recurso de kernel (introduzido na versão 3.11) que fornece um cache de RAM comprimido para páginas de troca (chamadas também páginas de swap). As páginas que de outra forma seriam trocadas para o disco são, em vez disso, comprimidas e armazenadas em um espaço de memória na RAM. Uma vez que o espaço está cheio ou a RAM está esgotada, a página menos usada recentemente é descomprimida e escrita no disco.

ZSwap (como ZRam também) permite ao Linux fazer um uso mais eficiente da RAM, uma vez que o sistema operacional pode armazenar mais páginas de memória no swap comprimido do que se a mesma quantidade de RAM tivesse sido usada como memória de aplicativo ou cache de disco. Isso é particularmente eficaz em máquinas que não possuem muita memória.

A diferença em relação a ZRam é que ZSwap funciona em conjunto com um dispositivo de swap, enquanto ZRam é um dispositivo de swap na RAM que não requer um dispositivo de swap de suporte.

A redução do uso do swap como resultado do uso de ZSwap (como ZRam também) efetivamente reduz a quantidade de desgaste colocada sobre armazenamento baseado em flash, resultando no prolongamento de sua vida útil. Além disso, o uso de ZSwap resulta em E/S significativamente reduzida para sistemas Linux que requerem swap.

Então ZSwap está sendo usado, certo? Errado!
Parece que o ZSwap é sempre carregado pelo kernel, mas não é usado a menos que habilitado manualmente no arranque do sistema.

Algoritmo de compressão


Para compressão de página, o ZSwap usa módulos de compressor fornecidos pela API criptográfica do kernel. Ele usa, por padrão, o algoritmo de compressão LZO, mas isso pode ser alterado com zswap.compressor. LZ4 pode ser usado em vez de LZO para compressão e descompressão mais rápidas para uma taxa de compressão ligeiramente mais baixa.

Pré-requisito

O sistema precisa de um dispositivo de troca física (partição swap ou swapfile).

Observações

ZSwap e ZRam não devem ser usados juntos, caso contrario a performance do sistema será prejudicada.
Para maior eficácia de ZSwap, use um valor de Swappiness próximo do padrão (60).

Habilitando ZSWAP

1. Verifique se o seu Kernel do sistema operacional vem com ZSWAP, executando:
cat /boot/config-`uname -r` | grep -i zswap
Se a resposta for CONFIG_ZSWAP=y, você está pronto para prosseguir.

2. Abra o grub como admin:
gksu xed /etc/default/grub

3. Mude a linha GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" para:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash zswap.enabled=1 zswap.compressor=lz4"
Salve, feche o xed.

4. Atualize o Grub, executando:
sudo update-grub

5. Ativando LZ4:
sudo apt install -y checkinstall build-essential
VERSION=1.8.1.2
cd /tmp
wget -nc https://github.com/lz4/lz4/archive/v1.8.1.2.tar.gz -O lz4.tar.gz
tar -xf lz4.tar.gz
cd lz4-$VERSION
make
echo y | sudo checkinstall
echo lz4 | sudo tee -a /etc/initramfs-tools/modules
echo lz4_compress | sudo tee -a /etc/initramfs-tools/modules
sudo update-initramfs -u

6. Reinicie o seu PC.

7. Verifique se ZSWAP está habilitado, executando:
cat /sys/module/zswap/parameters/enabled
Se ZSWAP estiver habilitado, você deve ver Y na resposta.

8. Para verificar se o compressor LZ4 está sendo usado, execute:
sudo dmesg | grep -i zswap
Verifique a última linha da resposta. Se o resultado disser:
[    1.046667] zswap: loaded using pool lz4/zbud
Então você habilitou o ZSWAP com sucesso.

Referências:
https://en.wikipedia.org/wiki/Zram
https://ubunlog.com/mejorar-rendimiento-ubuntu-gracias-zswap/
https://lz4.github.io/lz4/
https://forum.doozan.com/read.php?2,44269,44279
https://ubuntu-mate.community/t/enable-zswap-to-increase-performance/11302
https://fedoraproject.org/wiki/Zswap
Post edited by dougpess on
·
Entre ou Registre-se para fazer um comentário.