Differences

This shows you the differences between two versions of the page.

Link to this comparison view

litespeed_wiki:config:linux-kernel-tune [2015/07/24 15:24] (current)
Michael Alegre created
Line 1: Line 1:
 +====== Linux OS Tuning/​Optimizations ======
 +
 +===== High i/o wait tuning for File Servers ​ =====
 +
 +Under “Server”→“General” tab, change “Priority” configuration to “-19”. Process priority can be set from -19 to 20, -19 is the highest, 20 is the lowest. ​
 +
 +===== Change to '​deadline'​ I/O scheduler =====
 +  * From command line (change the device '​sda'​ to appropriate device):
 +
 +  echo “deadline” > /​sys/​block/​sda/​queue/​scheduler
 +
 + 
 +
 +  * kernel parameter, change /​boot/​grub/​menu.lst,​ add kernel parameter
 +
 +  elevator=deadline
 +
 +===== Change VM parameters =====
 +There are two variables which control the behaviour of VM flushing and allocation and affect network and disk performance
 +
 +  * vm.dirty_background_ratio
 +  * vm.dirty_ratio
 +
 +To set these values from command line
 +
 +  echo 20 > /​proc/​sys/​vm/​dirty_background_ratio
 +  echo 60 > /​proc/​sys/​vm/​dirty_ratio
 +
 +to make it permanent, edit /​etc/​sysctl.conf:​
 +
 +  vm.dirty_background_ratio = 20
 +  vm.dirty_ratio = 60
 +
 +
 +===== Increase readahead =====
 +
 +To get current readahead value:
 +
 +  $ blockdev --getra /dev/sda
 +  256
 +
 +To increase it to a higher value like 16K:
 +
 +  $ blockdev --setra 16384 /dev/sda
 +
 +
 +===== Disable updating access time stamp for file system =====
 +
 +Edit /etc/fstab, remove "​atime"​ attribute if there is, add "​noatime"​ attribute. The noatime change can significantly improve your server'​s file i/o performance.
 +
 +<​code>​
 +#sample /etc/fstab line before change
 +LABEL=/ ​                / ​                      ​ext3 ​   defaults ​       1 1
 +
 +#sample /etc/fstab line after noatime change
 +LABEL=/ ​                / ​                      ​ext3 ​   defaults ,​noatime ​      1 1
 +</​code>​
 +
 +===== Kernel Network Tuning =====
 +
 +Add the follwing to /​etc/​sysctl.conf
 +
 +<​code>​
 +#increase local ports
 +net.ipv4.ip_local_port_range = 1024 65535
 +
 +#reduce the number of time_wait connections
 +#these 3 lines can reduce your time_wait count by several hundred percent.
 +#however you should not use the following lines in a NATed configuration.
 +net.ipv4.tcp_tw_reuse = 1
 +net.ipv4.tcp_tw_recycle = 1
 +net.ipv4.tcp_fin_timeout = 30
 +</​code>​
 +
 +Then call sysctl to make them active
 +
 +<​code>​
 +sysctl -p
 +</​code>​
 +
 +
  
  • Admin
  • Last modified: 2015/07/24 15:24
  • by Michael Alegre