#!/bin/sh num_cpus=$(grep -c processor /proc/cpuinfo) [ "$num_cpus" != 0 ] || num_cpus=1 last_cpu=$((num_cpus - 1)) FACTOR=90 [ -f /etc/default/zram ] && source /etc/default/zram || true factor=$FACTOR # percentage memtotal=$(grep MemTotal /proc/meminfo | awk ' { print $2 } ') mem_by_cpu=$(($memtotal/$num_cpus*$factor/100*1024)) modprobe -q zram num_devices=$num_cpus for i in $(seq 0 $last_cpu); do echo $mem_by_cpu > /sys/block/zram$i/disksize mkswap /dev/zram$i swapon -p 100 /dev/zram$i done