IO Scheduler: Difference between revisions

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