Como configurar corretamente zram e swap

9

Estou configurando o & compilação do novo kernel 3.0. Uma das guloseimas que planejei usar por algum tempo (por patching) que foi mesclada em 3.0 é zram.

É possível configurar tanto o hdd swap como o zram swap para que o zram seja usado primeiro e somente páginas derramadas sejam colocadas na troca real?

    
por Maciej Piechotka 22.07.2011 / 23:45

4 respostas

6

swapon tem -p switch que define a prioridade. Posso configurar:

swapon -p 32767 /dev/zram0
swapon -p 0 /dev/my-lvm-volume/swap

Ou em / etc / fstab:

/dev/zram0              none swap sw,pri=32767 0 0
/dev/my-lvm-volume/swap none swap sw,pri=0     0 0

EDITAR: Apenas para uma solução completa - essa linha pode ser útil como regra do udev:

KERNEL=="zram0", ACTION=="add", ATTR{disksize}="1073741824", RUN="/sbin/mkswap /$root/$name"
    
por 23.07.2011 / 15:26
7

Sidenote: por causa do bloqueio por-cpu, é importante ter muitos zram-swaps como CPUs (modprobe zram_num_devices = n zram) em vez de um único grande. RTFM!

    
por 27.11.2011 / 18:59
1

Selecione quantos dispositivos zram você deseja passando

zram.num_devices=4

para os parâmetros do kernel ou diretamente para o módulo (sem zram.). O valor padrão é 1. O zram poderá utilizar tantos CPUs quantos o número de dispositivos que você criar.

Prepare o dispositivo zram0, defina o tamanho para 1 GB.

echo 1000000000 > /sys/block/zram0/disksize

Como alternativa, você pode fazer isso pela regra do udev. Criar swap no zram0

mkswap /dev/zram0

e habilitá-lo com maior prioridade do que outros dispositivos de troca

swapon -p 32767 /dev/zram0
    
por 03.06.2014 / 18:25
0

Quando você ativa o zram, ele terá prioridade automaticamente.

Para o Ubuntu 16.04: /usr/bin/init-zram-swapping

Você pode editar esse arquivo (fazer um backup primeiro), para diminuir o real usado ram, eu mudei a linha de mem para isso:

mem=$(((totalmem / 4 / ${NRDEVICES}) * 1024))
    
por 19.06.2017 / 16:59