|
ABSTRACT
Virtualized storage systems are required to service concurrently executing workloads, with potentially diverse data delivery requirements, that are running under multiple operating systems. Although a number of algorithms have been developed for I/O performance virtualization among operating system (OS) instances and their applications, none results in absolute performance virtualization. By absolute performance virtualization we mean that the performance experienced by applications of one operating system does not suffer due to variations in the I/O request stream characteristics of applications of other operating systems. Key requirements of I/O performance virtualization are fairness and performance isolation. In this paper, we present a novel virtual I/O scheduler (VIOS) that provides absolute performance virtualization by being fair in sharing I/O system resources among operating systems and their applications, and provides performance isolation in the face of variations in the characteristics of I/O streams. The VIOS controls the coarse grain allocation of disk time to the different operating system instances and is OS independent; optionally, a set of OS-dependent schedulers may determine the fine-grain interleaving of requests from the corresponding operating systems to the storage system.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
Guillermo A. Alvarez , Elizabeth Borowsky , Susie Go , Theodore H. Romer , Ralph Becker-Szendy , Richard Golding , Arif Merchant , Mirjana Spasojevic , Alistair Veitch , John Wilkes, Minerva: An automated resource provisioning tool for large-scale storage systems, ACM Transactions on Computer Systems (TOCS), v.19 n.4, p.483-518, November 2001
[doi> 10.1145/502912.502915]
|
| |
2
|
Eric Anderson , Michael Hobbs , Kimberly Keeton , Susan Spence , Mustafa Uysal , Alistair C. Veitch, Hippodrome: Running Circles Around Storage Administration, Proceedings of the Conference on File and Storage Technologies, p.175-188, January 28-30, 2002
|
| |
3
|
J. Axboe, "Linux Block IO -- Present and Future," Proceedings of the Ottawa Linux Symposium 2004, Ottawa, Ontario, Canada, July 21--24, 2004, pp. 51--61.
|
| |
4
|
S. Bhattacharya, S. Pratt, B. Pulavarty, J. Morgan, "Asynchronous I/O Support in Linux 2.5," Proceedings of the Ottawa Linux Symposium 2003, Ottawa, Ontario, Canada, July 23--26, pp. 371--386.
|
| |
5
|
|
 |
6
|
A. Demers , S. Keshav , S. Shenker, Analysis and simulation of a fair queueing algorithm, Symposium proceedings on Communications architectures & protocols, p.1-12, September 25-27, 1989, Austin, Texas, United States
|
| |
7
|
S. J. Golestani, "A Self-Clocked Fair Queueing Scheme for Broadband Applications," Proceedings of IEEE INFOCOM'94, Toronto, Canada, June 12--16, 1994, pp. 636--646.
|
 |
8
|
|
 |
9
|
|
 |
10
|
|
| |
11
|
A. Huffman, J. Clark, "Serial ATA: Native Command Queuing -- An Exciting New Performance Feature for Serial ATA," A Joint White Paper By: Intel Corporation and Seagate Technology LLC, July 2003.
|
 |
12
|
|
| |
13
|
|
| |
14
|
D. T. Marr, F. Binns, D. L. Hill, G. Hinton, D. A. Koufaty, J. A. Miller, and M. Upton, "Hyper-threading Technology Architecture and Microarchitecture," Intel Technology Journal, 2002, 6(1):4--15.
|
| |
15
|
N. Marushak and R. Jeppsen, "Deciding between SATA and SAS? Compare their Behind-the-Scenes Command Queuing Techniques," Storage Networking Work Online, September 2004.
|
| |
16
|
P. McKenney, "Stochastic Fairness Queueing," Internetworking: Research and Experience, January 1991, Vol. 2, pp. 113--131.
|
| |
17
|
S. Pratt, and D. Heger, "Workload Dependent Performance Evaluation of the Linux 2.6 I/O Schedulers," Proceedings of the Ottawa Linux Symposium 2004, Ottawa, Ontario, Canada, July 21-24, pp. 425--448.
|
| |
18
|
S. Seelam and P. Teller, "Fairness and Performance Isolation: an Analysis of Disk Scheduling Algorithms," Proceedings of International Workshop on High Performance I/O Techniques and Deployment of Very Large Scale I/O Systems (HiperIO'06), Barcelona, Spain, September 25-28, 2006.
|
| |
19
|
|
| |
20
|
|
| |
21
|
|
| |
22
|
|
 |
23
|
|
| |
24
|
|
| |
25
|
Jianyong Zhang , Anand Sivasubramaniam , Qian Wang , Alma Riska , Erik Riedel, Storage Performance Virtualization via Throughput and Latency Control, Proceedings of the 13th IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, p.135-142, September 27-29, 2005
[doi> 10.1109/MASCOT.2005.71]
|
| |
26
|
T. Zanussi, K. Yaghmour, R.Wisniewski, R. Moore, and M. Dagenais, "relayfs: an Efficient Unified Approach for Transmitting Data from Kernel to User Space," Proceedings of the 2003 Linux Symposium, Ottawa, Canada, July 23--26, 2003.
|
| |
27
|
tiobench: Thread I/O Bench for Linux, tiobench.sourceforge.net.
|
| |
28
|
J. Axboe, "Patch: Block Device IO Tracing," http://lwn.net/Articles/155340/.
|
| |
29
|
J. Axboe, "Time Sliced CFQ I/O Scheduler," http://kerneltrap.org/node/4406.
|
| |
30
|
From SCSI to SATA, http://www.westerndigital.com/en/library/sata/2579--001097.pdf
|
| |
31
|
TCQ, RAID, SCSI, and SATA, http://www.storagereview.com/articles/200406/20040625TCQ_1.html
|
| |
32
|
Tagged Command Queuing: http://en.wikipedia.org/wiki/Tagged_Command_Queueing
|
| |
33
|
Tagged Command Queuing (TCQ): http://www.wdc.com/en/library/sata/2579-001076.pdf
|
| |
34
|
Setting SCSI-Adapter and Disk-Device Queue Limits, www.unet.univie.ac.at/aix/aixbman/prftungd/scsiqueue.htm
|
|