An Evaluation of Linux I/O Scheduler Behavior at the Block I/O Layer

No Thumbnail Available

Date

2008-03-29

Journal Title

Series/Report No.

Journal ISSN

Volume Title

Publisher

Abstract

Linux comes with four different I⁄O schedulers - NOOP, Deadline, Anticipatory, and Complete Fairness Queuing (CFQ). Each scheduler attempts to reduce overall response time using different algorithms involving ordering and merging of I⁄O requests. These schedulers tend to behave differently for different types of workloads. In this study we validate the behavior of the different I⁄O schedulers at the block I⁄O layer, present our observations and and give our recomomendation regarding what could be the right scheduler for a particular environment. We have restricted our study to a desktop environment. To capture block I⁄O layer events we use a combination of blktrace (a block I⁄O layer trace tool) and systemtap (a running kernel trace tool). We have captured I⁄O traces for the different schedulers under different application loads. Hard disk queuing effects of SATA⁄ SCSI have an impact on I⁄O behavior and we evaluate this behavior by running our tests on different types of disks. All our tests were run on the ext3 filesystem.

Description

Keywords

Linux IO Scheduler

Citation

Degree

MS

Discipline

Computer Science

Collections