Advertisement
Guest User

Untitled

a guest
Oct 31st, 2014
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.27 KB | None | 0 0
  1. find /dev/ -maxdepth 1 -name 'ramzswap*' | while read dev; do
  2. mkswap $dev
  3. swapon -p 1000 $dev
  4. done
  5.  
  6. ### BEGIN INIT INFO
  7. # Provides: zram
  8. # Required-Start: $local_fs
  9. # Required-Stop: $local_fs
  10. # Default-Start: S
  11. # Default-Stop: 0 1 6
  12. # Short-Description: Use compressed RAM as in-memory swap
  13. # Description: Use compressed RAM as in-memory swap
  14. ### END INIT INFO
  15.  
  16. # Author: Antonio Galea <antonio.galea@gmail.com>
  17. # Thanks to Przemysław Tomczyk for suggesting swapoff parallelization
  18.  
  19. FRACTION=75
  20.  
  21. MEMORY=`perl -ne'/^MemTotal:s+(d+)/ && print $1*1024;' < /proc/meminfo`
  22. CPUS=`grep -c processor /proc/cpuinfo`
  23. SIZE=$(( MEMORY * FRACTION / 100 / CPUS ))
  24.  
  25. case "$1" in
  26. "start")
  27. param=`modinfo zram|grep num_devices|cut -f2 -d:|tr -d ' '`
  28. modprobe zram $param=$CPUS
  29. for n in `seq $CPUS`; do
  30. i=$((n - 1))
  31. echo $SIZE > /sys/block/zram$i/disksize
  32. mkswap /dev/zram$i
  33. swapon /dev/zram$i -p 10
  34. done
  35. ;;
  36. "stop")
  37. for n in `seq $CPUS`; do
  38. i=$((n - 1))
  39. swapoff /dev/zram$i && echo "disabled disk $n of $CPUS" &
  40. done
  41. wait
  42. sleep .5
  43. modprobe -r zram
  44. ;;
  45. *)
  46. echo "Usage: `basename $0` (start | stop)"
  47. exit 1
  48. ;;
  49. esac
  50.  
  51. sudo chmod +x /etc/init.d/zram
  52. sudo /etc/init.d/zram start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement