Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- find /dev/ -maxdepth 1 -name 'ramzswap*' | while read dev; do
- mkswap $dev
- swapon -p 1000 $dev
- done
- ### BEGIN INIT INFO
- # Provides: zram
- # Required-Start: $local_fs
- # Required-Stop: $local_fs
- # Default-Start: S
- # Default-Stop: 0 1 6
- # Short-Description: Use compressed RAM as in-memory swap
- # Description: Use compressed RAM as in-memory swap
- ### END INIT INFO
- # Author: Antonio Galea <antonio.galea@gmail.com>
- # Thanks to Przemysław Tomczyk for suggesting swapoff parallelization
- FRACTION=75
- MEMORY=`perl -ne'/^MemTotal:s+(d+)/ && print $1*1024;' < /proc/meminfo`
- CPUS=`grep -c processor /proc/cpuinfo`
- SIZE=$(( MEMORY * FRACTION / 100 / CPUS ))
- case "$1" in
- "start")
- param=`modinfo zram|grep num_devices|cut -f2 -d:|tr -d ' '`
- modprobe zram $param=$CPUS
- for n in `seq $CPUS`; do
- i=$((n - 1))
- echo $SIZE > /sys/block/zram$i/disksize
- mkswap /dev/zram$i
- swapon /dev/zram$i -p 10
- done
- ;;
- "stop")
- for n in `seq $CPUS`; do
- i=$((n - 1))
- swapoff /dev/zram$i && echo "disabled disk $n of $CPUS" &
- done
- wait
- sleep .5
- modprobe -r zram
- ;;
- *)
- echo "Usage: `basename $0` (start | stop)"
- exit 1
- ;;
- esac
- sudo chmod +x /etc/init.d/zram
- sudo /etc/init.d/zram start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement