Anticipatory scheduling

Anticipatory scheduling

Anticipatory scheduling is an algorithm for scheduling hard disk input/output. It seeks to increase the efficiency of disk utilization by "anticipating" synchronous read operations.

"Deceptive idleness" is a situation where a process appears to be finished reading from the disk when it is actually processing data in preparation of the next read operation. This will cause a normal work-conserving I/O scheduler to switch to servicing I/O from an unrelated process. This situation is detrimental to the throughput of synchronous reads, as it degenerates into a seeking workload. [cite paper|author=Iyer, Sitaram|title=The Effect of Deceptive Idleness on Disk Schedulers|url=http://www.cs.rice.edu/~ssiyer/r/antsched/thesis/|accessdate=2007-05-23] Anticipatory scheduling overcomes deceptive idleness by pausing for a short time (a few milliseconds) after a read operation in "anticipation" of another close-by read requests. [cite mailing list|last=Morton|first=Andrew|authorlink=Andrew Morton (computer programmer)|title=2.5.59-mm5|mailinglist=linux-kernel, linux-mm|date=2003-01-23|url=http://kerneltrap.org/node/567|accessdate=2007-05-23] Anticipatory scheduling yields significant improvements in disk utilization for some workloads. [cite mailing list|last=Morton|first=Andrew|authorlink=Andrew Morton (computer programmer)|title=IO scheduler benchmarking|mailinglist=linux-kernel|date=2003-02-20|url=http://kerneltrap.org/node/592|accessdate=2007-05-23 ] In some situations the Apache web server may achieve up to 71% more throughput from using anticipatory scheduling. [cite conference|last=Iyer|first=Sitaram|coauthors=Druschel, Peter| title=Anticipatory scheduling: A disk scheduling framework to overcome deceptive idleness in synchronous I/O|url=http://www.cs.rice.edu/~ssiyer/r/antsched/html/|date=2001-06-06|booktitle=18th ACM Symposium on Operating Systems Principles|accessdate=2007-05-23]

The Linux anticipatory scheduler may reduce performance on disks using TCQ, high performance disks, and hardware RAID arrays. [cite web|url=http://kernel.org/pub/linux/kernel/people/landley/kdocs/Documentation/block/as-iosched.txt|work=Linux kernel documentation|title=as-iosched.txt|last=Piggin|first=Nick|date=2003-09-13] An anticipatory scheduler (AS) was the default Linux kernel scheduler between 2.6.0 and 2.6.18, by which time it was replaced by the CFQ scheduler.

See also

* Scheduling (computing)

Other I/O schedulers

* CFQ
* Anticipatory scheduler
* Noop scheduler
* Deadline scheduler

References


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • Anticipatory Scheduling — L Anticipatory scheduling (« ordonnancement anticipé » en français), est un algorithme d ordonnancement pour les entrée sorties sur les disques durs d un ordinateur, présent dans le noyau Linux. Son but est d optimiser l utilisation de… …   Wikipédia en Français

  • Anticipatory scheduling — L Anticipatory scheduling (« ordonnancement anticipé » en français), est un algorithme d ordonnancement pour les entrée sorties sur les disques durs d un ordinateur qui était présent dans le noyau Linux jusqu à la version 2.6.32[1]. Son …   Wikipédia en Français

  • I/O scheduling — For process scheduling, see scheduling (computing). For process management, see process management (computing). Input/output (I/O) scheduling is a term used to describe the method computer operating systems decide the order that block I/O… …   Wikipedia

  • Ordonnancement anticipé — Anticipatory scheduling L Anticipatory scheduling (« ordonnancement anticipé » en français), est un algorithme d ordonnancement pour les entrée sorties sur les disques durs d un ordinateur, présent dans le noyau Linux. Son but est d… …   Wikipédia en Français

  • Ordonnancement d'E/S — Pour les articles homonymes, voir Ordonnancement. L ordonnancement d E/S est le terme utilisé pour décrire la méthode qu un système d exploitation utilise pour décider de l ordre dans lequel les opérations d E/S seront transmises aux disques. L… …   Wikipédia en Français

  • CFQ — Completely Fair Queuing Le Completely Fair Queuing (File d attente complètement équitable en anglais), ou CFQ, est un ordonnanceur de tâches d E/S pour le noyau Linux et écrit par Jens Axboe. CFQ fonctionne en plaçant les requêtes synchrones… …   Wikipédia en Français

  • Complete Fair Queuing — Completely Fair Queuing Le Completely Fair Queuing (File d attente complètement équitable en anglais), ou CFQ, est un ordonnanceur de tâches d E/S pour le noyau Linux et écrit par Jens Axboe. CFQ fonctionne en plaçant les requêtes synchrones… …   Wikipédia en Français

  • Completely Fair Queuing — Le Completely Fair Queuing (File d attente complètement équitable en anglais), ou CFQ, est un ordonnanceur de tâches d E/S pour le noyau Linux et écrit par Jens Axboe. CFQ fonctionne en plaçant les requêtes synchrones soumises par les processus… …   Wikipédia en Français

  • Deadline Scheduler — Le Deadline scheduler (« ordonnanceur sur échéance » en français) est un ordonnanceur d E/S pour le noyau Linux écrit par Jens Axboe. Sommaire 1 Vue d ensemble 2 Réglage 3 A …   Wikipédia en Français

  • Deadline scheduler — Le Deadline scheduler (« ordonnanceur sur échéance » en français) est un ordonnanceur d E/S pour le noyau Linux écrit par Jens Axboe. Sommaire 1 Vue d ensemble 2 Réglage 3 Autres ordonnanceurs d E/S …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”