Kernel IO Turning



Kernel Performance turning

# Page Cache (holds data from files and executable programs) 1% RAM

"1" > /proc/sys/vm/pagecache

# 'deadline' seems to enhance performance

"deadline" > /sys/block/sdc/queue/scheduler

# the size of I/O requests which are buffered before they are communicated to the disk by the Scheduler.
# (order and merge the requests)

"256" > /sys/block/sdc/queue/nr_requests

# number of pages which are written to swap in a single attempt ( '16' as per the RAID stripe size of 64k )

echo "16" > /proc/sys/vm/page-cluster

# With GlusterFS, many users with a lot of storage and many small files easily end up using a lot of RAM
# on the server side due to 'inode/dentry' caching
# default value of vfs_cache_pressure=100, 0 => disable

vm.vfs_cache_pressure > 100

# defines the percentage of memory that can become dirty before a background flushing
# Until this percentage is reached no pages are flushed to disk.


# defines the percentage of memory which can be occupied by dirty pages before a forced flush starts.


# sets read-ahead to 4096 * 512-byte sectors
# It may put in cached data which will be requested by the next read.
# Too much read-ahead may kill random I/O on huge files

blockdev --setra 4096 /dev/<devname>