Difference between revisions of "IO Scheduler"

From Proxmox VE
Jump to navigation Jump to search
(page created)
 
(→‎Set IO Schedulers permanently: GRUB_CMDLINE_LINUX > GRUB_CMDLINE_LINUX_DEFAULT)
Line 29: Line 29:
 
  nano /etc/default/grub
 
  nano /etc/default/grub
  
  GRUB_CMDLINE_LINUX="elevator=deadline"
+
  GRUB_CMDLINE_LINUX_DEFAULT="elevator=deadline"
  
 
or:  
 
or:  
  
  GRUB_CMDLINE_LINUX="elevator=cfq"
+
  GRUB_CMDLINE_LINUX_DEFAULT="elevator=cfq"
  
 
After you change /etc/default/grub you need to run update-grub to apply changes:
 
After you change /etc/default/grub you need to run update-grub to apply changes:

Revision as of 10:47, 8 May 2013

Introduction

The Linux kernel, the core of the operating system, is responsible for controlling disk access by using kernel IO scheduling.

This article explains how-to change the IO scheduler without recompiling the kernel and without restart.

Check the currently used IO scheduler

cat /sys/block/sda/queue/scheduler
noop anticipatory [deadline] cfq

Proxmox VE uses deadline by default, delivers best performance on hardware raid and SAN environments.

Switching IO Schedulers on runtime

Set the scheduler for /dev/sda to Deadline:

echo deadline > /sys/block/sda/queue/scheduler

Set the scheduler for /dev/sda to CFQ:

echo cfq > /sys/block/sda/queue/scheduler

Set IO Schedulers permanently

In order to choose a new default scheduler you need to add the following into your /etc/default/grub:

nano /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="elevator=deadline"

or:

GRUB_CMDLINE_LINUX_DEFAULT="elevator=cfq"

After you change /etc/default/grub you need to run update-grub to apply changes:

update-grub

Links