Research Article

A Pruning-Based Disk Scheduling Algorithm for Heterogeneous I/O Workloads

Table 1

A summary of disk scheduling algorithms.

AlgorithmBasic ideaAdvantageWeaknessTarget applications

SSTFService request with shortest seek time firstSimple to implement;
high throughput
High variation of response time Best-effort applications
SATFService request with shortest access time (including rotational latency) firstHigh throughputRequire knowledge of disk structure
SCANScan in one direction and service all requests by track number order and change the direction of scanSimple to implement;
high throughput
Consider only best-effort requests
C-SCANVariant of SCAN that always scans in one directionSimple to implement; high throughput;
low variation of response time
Consider only best-effort requests

EDFService request with Earliest Deadline FirstSimplest to implement in real-time environmentLow disk utilization Real-time applications
SCAN-EDFService EDF order and use SCAN as a tie breakerSimple to implementPossible to degenerate into EDF
SSEDO/
SSEDV
Consider both deadline and seek time, but put more weight on deadlineConsider both deadline and seek timeRequire parameter tuning
FD-SCANMove head towards the request with earliest feasible deadline; service requests on the wayConsider feasibility of real-time requestsMay incur many deadline misses;
high overhead
SCAN-RTBasically SCAN; insert new request only if it does not violate the deadlines of pending requestsEmploy SCAN considering deadlineNot consider different priority level of requests
DM-SCANApply SCAN by unifying deadlines of requests within maximum scannable groupEmploy SCAN considering deadlinePossible to degenerate into EDF
Kamel’sBasically SCAN; insert new request considering deadline and priorityConsider different priority level;
deadline guarantee
Immature handling of requests in next round
MS-EDFFind a global optimal schedule using branch-and-bound schemeGlobal search of an optimal schedule;
high performance
Only for real-time requests; off-line mechanism

Rangan’sA fixed-order cyclical scheduling strategyEmploy an elaborate disk modelNot handle frame-oriented data Multimedia streaming applications
GSSAssign the joint deadline to each group of streams; each group is serviced in a fixed order in a roundSimple to implement; obtain high throughput by using SCAN within each roundRequire group size tuning
Preseeking sweepSplit stream data requests into multiple fragmentsObtain high throughput by employing an elaborate disk modelRequire knowledge of disk structure
Chen’sModify round-robin scheduling to provide statistical guarantees to clientsUseful when playback guarantee is not necessaryRequire complicated statistical analysis

CelloTwo-level disk scheduling framework: a class-independent scheduler and a set of class-specific schedulersGuarantee predefined disk bandwidth for each classNot guarantee the jitter-free playback of multimedia Applications with heterogeneous workloads
Reddy’sSimilar to Cello; employ admission controller as well as schedulerConsider admission controller and VBR streamsRequire knowledge of disk structure
Won’sAllocate some bandwidth to best-effort requests by extending the length of roundConsider buffer requirement for jitter-free playback of multimediaRequire knowledge of disk structure
WRR-SCANAllocate disk bandwidth to prioritized task groups and service requests in the group by SCANGuarantee minimal disk bandwidth for aperiodic tasksRequire knowledge of disk structure
Cascaded-SFCUnified framework considering various scheduling parametersConsider all scheduling parameters;
applicable to various environments
Require parameter tuning
FahrradReserve disk bandwidth based on disk time utilizationFully reserve the disk bandwidth for different applicationsLess efficient in small bursty workload with low-latency targets
HorizonTwo-layered approach: upper level for deadline assignment and lower level for schedulingSchedule requests based on their expected disk service timeLack of hard real-time supports