IO Scheduler

From Proxmox VE
Revision as of 11:11, 5 October 2016 by Dominik Csapak (talk | contribs) (moved from installation to system administration)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

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