Created
June 21, 2016 02:41
-
-
Save sultanqasim/79799883c6b81c710e36a38008dfa374 to your computer and use it in GitHub Desktop.
ZRAM config for Raspberry Pi 3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Raspberry Pi ZRAM script | |
# Tuned for quad core, 1 GB RAM models | |
# put me in /etc/init.d/zram.sh and make me executable | |
# then run "sudo update-rc.d zram.sh defaults" | |
modprobe zram | |
echo 3 >/sys/devices/virtual/block/zram0/max_comp_streams | |
echo lz4 >/sys/devices/virtual/block/zram0/comp_algorithm | |
echo 268435456 >/sys/devices/virtual/block/zram0/mem_limit | |
echo 536870912 >/sys/devices/virtual/block/zram0/disksize | |
mkswap /dev/zram0 | |
swapon -p 0 /dev/zram0 | |
sysctl vm.swappiness=70 |
When "sudo update-rc.d zram.sh defaults" I get:
insserv: warning: script 'zram.sh' missing LSB tags and overrides
insserv: There is a loop between service watchdog and zram.sh if stopped
insserv: loop involving service zram.sh at depth 2
insserv: loop involving service watchdog at depth 1
insserv: Stopping zram.sh depends on watchdog and therefore on system facility `$all' which can not be true!
insserv: exiting now without changing boot order!
update-rc.d: error: insserv rejected the script header
So... what now?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
You might want to update your script to benefit from the new zram backing device -- where uncompressible pages get stored without agressive flushing. I'm getting wonderful results -- better yet when combining parallel backing devices. Here is what I use on my setup of an sd card plus 4 cheap usb pendrives with a dedicated partition to serve as the backing device on each:
modprobe zram num_devices=5; ((z=0)); for d in /dev/mmcblk0pX /dev/sdaX /dev/sdbX /dev/sdcX /dev/sddX; do echo$d >/sys/block/zram$ {z}/backing_dev; echo lz4 >/sys/devices/virtual/block/zram${z}/comp_algorithm; echo 96m >/sys/devices/virtual/block/zram${z}/mem_limit; echo 512m >/sys/devices/virtual/block/zram${z}/disksize; mkswap /dev/zram${z}; swapon -p 15 /dev/zram${z}; ((z++)); done
Notes: