FAIRIO: A Throughput-oriented Algorithm for Differentiated I/O Performance

Providing differentiated service in a consolidated storage environment is a challenging task. To address this problem, we introduce FAIRIO, a cycle-based I/O scheduling algorithm that provides differentiated service to workloads concurrently accessing a consolidated RAID storage system. FAIRIO enforces proportional sharing of I/O service through fair scheduling of disk time. During each cycle of the algorithm, I/O requests are scheduled according to workload weights and disk-time utilization history. Experiments, which were driven by the I/O request streams of real and synthetic I/O benchmarks and run on a modified version of DiskSim, provide evidence of FAIRIO’s effectiveness and demonstrate that fair scheduling of disk time is key to achieving differentiated service in a RAID storage system. In particular, the experimental results show that, for a broad range of workload request types, sizes, and access characteristics, the algorithm provides differentiated storage throughput that is within 10% of being perfectly proportional to workload weights; and, it achieves this with little or no degradation of aggregate throughput. The core design concepts of FAIRIO, including service-time allocation and history-driven compensation, potentially can be used to design I/O scheduling algorithms that provide workloads with differentiated service in storage systems comprised of RAIDs, multiple RAIDs, SANs, and hypervisors for Clouds.

[1]  Seetharami R. Seelam,et al.  Towards dynamic adaptation of i/o scheduling in commodity operating systems , 2006 .

[2]  Sang-Min Park,et al.  Predictable High-Performance Computing Using Feedback Control and Admission Control , 2011, IEEE Transactions on Parallel and Distributed Systems.

[3]  BrandtScott,et al.  Efficient guaranteed disk request scheduling with fahrrad , 2008 .

[4]  Richard A. Golding,et al.  Zygaria: Storage Performance as a Managed Resource , 2006, 12th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'06).

[5]  Xiaoyun Zhu,et al.  Triage: Performance differentiation for storage systems using adaptive control , 2005, TOS.

[6]  Jian Xu,et al.  Performance virtualization for large-scale storage systems , 2003, 22nd International Symposium on Reliable Distributed Systems, 2003. Proceedings..

[7]  Irfan Ahmad,et al.  PARDA: Proportional Allocation of Resources for Distributed Storage Access , 2009, FAST.

[8]  Song Jiang,et al.  QoS support for end users of I/O-intensive applications using shared storage systems , 2011, 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC).

[9]  Prashant J. Shenoy,et al.  Cello: A Disk Scheduling Framework for Next Generation Operating Systems* , 1998, SIGMETRICS '98/PERFORMANCE '98.

[10]  Seetharami R. Seelam,et al.  FAIRIO: An Algorithm for Differentiated I/O Performance , 2011, 2011 23rd International Symposium on Computer Architecture and High Performance Computing.

[11]  Anoop Gupta,et al.  Performance isolation: sharing and isolation in shared-memory multiprocessors , 1998, ASPLOS VIII.

[12]  Mahmut T. Kandemir,et al.  Provisioning a Multi-tiered Data Staging Area for Extreme-Scale Machines , 2011, 2011 31st International Conference on Distributed Computing Systems.

[13]  Anand Sivasubramaniam,et al.  Storage performance virtualization via throughput and latency control , 2005, 13th IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems.

[14]  Scott Rixner,et al.  A storage architecture for data-intensive computing , 2010 .

[15]  Ravi Wijayaratne,et al.  Providing QOS guarantees for disk I/O , 2000, Multimedia Systems.

[16]  Scott A. Brandt,et al.  The Design and Implementation of AQuA: An Adaptive Quality of Service Aware Object-Based Storage Device , 2006 .

[17]  Kang G. Shin,et al.  Maestro: quality-of-service in large disk arrays , 2011, ICAC '11.

[18]  Carlos Maltzahn,et al.  Virtualizing Disk Performance , 2008, 2008 IEEE Real-Time and Embedded Technology and Applications Symposium.

[19]  Gregory R. Ganger,et al.  Argon: Performance Insulation for Shared Storage Servers , 2007, FAST.

[20]  Carlos Maltzahn,et al.  Efficient guaranteed disk request scheduling with fahrrad , 2008, Eurosys '08.

[21]  G. Bruce Berriman,et al.  Scientific workflow applications on Amazon EC2 , 2010, 2009 5th IEEE International Conference on E-Science Workshops.

[22]  Wei Jin,et al.  Interposed proportional sharing for a storage service utility , 2004, SIGMETRICS '04/Performance '04.

[23]  Arif Merchant,et al.  Façade: Virtual Storage Devices with Performance Guarantees , 2003, FAST.

[24]  Peter J. Varman,et al.  mClock: Handling Throughput Variability for Hypervisor IO Scheduling , 2010, OSDI.

[25]  John Shalf,et al.  Defining future platform requirements for e-Science clouds , 2010, SoCC '10.