deakin research onlinedro.deakin.edu.au/eserv/du:30006072/abawajy-parallelio-2006.pdf · ubiquity...

9
Deakin Research Online Deakin University’s institutional research repository DDeakin Research Online Research Online This is the published version (version of record) of: Abawajy, Jemal 2006, Parallel I/O scheduling in the presence of data duplication on multiprogrammed cluster computing systems, in 2006 IEEE International Conference on Computer Systems and Applications, IEEE, Piscataway, N.J., pp. 1118-1125. Available from Deakin Research Online: http://hdl.handle.net/10536/DRO/DU:30006072 Copyright : ©2006 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.

Upload: others

Post on 23-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Deakin Research Onlinedro.deakin.edu.au/eserv/DU:30006072/abawajy-parallelIO-2006.pdf · ubiquity of cluster computing has grown in the past decade, so did the execution of data intensive

Deakin Research Online Deakin University’s institutional research repository

DDeakin Research Online Research Online This is the published version (version of record) of: Abawajy, Jemal 2006, Parallel I/O scheduling in the presence of data duplication on multiprogrammed cluster computing systems, in 2006 IEEE International Conference on Computer Systems and Applications, IEEE, Piscataway, N.J., pp. 1118-1125. Available from Deakin Research Online: http://hdl.handle.net/10536/DRO/DU:30006072 Copyright : ©2006 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.

Page 2: Deakin Research Onlinedro.deakin.edu.au/eserv/DU:30006072/abawajy-parallelIO-2006.pdf · ubiquity of cluster computing has grown in the past decade, so did the execution of data intensive

Parallel I/O Scheduling in the Presence of Data Duplication on Multiprogrammed Cluster Computing Systems

J. H. Abawajy Dealcin University,

School of Information Technology, Geelong, VIC., 3217, Australia.

Abstract

The widespread adoption of cluster computing as a h.igh performance computing platform has seen the growth of data intensive scientific, en- gineering and commercial applications such as digital libraries, climate modeling, computational chemistry, computational fluid dynamics and im- age repositories. However, I/O subsystem per- formance has not been keeping pace with proces- sor and memory performance, and is fast bewm- ing the dominant factor in overall system perfor- mance. Thus, parallel I/O has become a necessitg in the face of performance improvements in other areas of computing systems. Th,is paper addresses the problem of parallel I /O scheduling on cluster computing systems in the presence of data repli- cation. We propose two new I/O scheduling algo- rithms and evaluate the relative performance of the proposed policies against two existing approaches. Simulation results show that the proposed policies perform substantially better than the baseline poli- cies.

Keyword: I/O Scheduling, Cluster computing, Parallel 110, Performance analysis.

1. Introduction

Recent advances in low-latency, high-speed net- work technology coupled with inexpensive com- modity processors have lead to the emergence of cost-effective parallel computing platform com- monly known as a cluster computing 141. As the

ubiquity of cluster computing has grown in the past decade, so did the execution of data intensive scientific and engineering applications such cli- mate modeling, computational chemistry, compu- tational fluid dynamics and image repositories on clusters. To date, significant research efforts have been directed to parallelization of computation as well as finding effective strategies for mapping of parallel tasks to cluster machines 1261.

Although both parallelization and mapping strategies of parallel jobs have improved system utilization and response time to certain extent, ob- taining maximum performance of the parallel pro- grams have remained elusive 131. This is because many scientific and engineering applications have large I/O requirements, in terms of both the size of data and the number of files or data sets [20]. Moreover, regardless of the fact that disk tech- nology has been advancing rapidly especially with respect to the storage density, capacity and band- width, I/O subsystem continues to be a major bot- tleneck in many parallel applications [22] 1241 [dl. Therefore, in addition to computation parallelism, the parallelization of I/O operations is required for achieving optimum application performance [$I.

Although, several parallel file systems (e.g., [19], 1121, [5]) as well as optimizations techniques (e.g., [24], [9], [14]) have been developed to ease the I/O bottlenecks, I/O in cluster computing still remains an area requiring significant performance improvement 1231. This is because most of these previous work were tailored for the commercial su- percomputers environment where the network in the parallel machines typically has much lower la-

11181-4244-0212-3/06/$20.00/©2006 IEEE

Authorized licensed use limited to: IEEE Xplore. Downloaded on December 10, 2008 at 20:33 from IEEE Xplore. Restrictions apply.

Page 3: Deakin Research Onlinedro.deakin.edu.au/eserv/DU:30006072/abawajy-parallelIO-2006.pdf · ubiquity of cluster computing has grown in the past decade, so did the execution of data intensive

tency and much higher throughput than the stor- age system [22].

These observations suggest that, with the adop- tion of cluster computing as a high performance computing platform, some additional supporting technologies are required. Parallel I/O [6] is one such supporting technology that is capable of pro- viding high speed data storage in cluster com- puting environments [22]. Parallel I/O can im- prove I/O performance by combining large num- bers of storage devices and providing the system software to utilize them in concert. Data is dis- tributed among the disks to enable simultaneous parallel access. Individual applicationq can poten- tially speed up their 110 by fetching data blocks in parallel from multiple disks, and buffering them in memory until required. Thus, parallel I/O sys- tems have emerged and are beginning to see use in the main stream [22].

In this paper, we address the problem of par- allel I/O scheduling for multiprogrammed clus- ter computing environments. The motivation for studying this problem is that scheduling is neces- sary when several concurrent applications are si- multaneously sharing the I/O system [2]. Also, it has been shown that the performance of care- fully tuned parallel programs can slow down dra- matically when they read or write files in clus- ter computing systems [16]. Although parallel I/O has extended the range of problems that may be solved on high performance cluster computing platforms, it is shown that peak performance is rarely attained from these coordinated storage de- vices [23] [27] and research into optimizing these systems is still an open area [22]. Thus, we he- lieve that scheduling parallel I/O operations will become increasingly attractive and can potentially provide substantial performance benefits. How- ever it is a challenge to schedule and coordinate the I/Os of myriad concurrent devices to meet the resource constraints and timing demands of the applications.

In this paper, we present a set of new parallel I/O scheduling algorithms for multiprogrammed cluster computing environments running paral- lel I/O workloads. Although it was noted that scheduling does have noticeable effects on perfor-

mance in a single-application environment [22] [i'l [2] [15], there is a lack of research that investigates the effectiveness of parallel I/O scheduling strate- gies for multiprogrammed cluster computing en- vironments [7] [3]. In the multi-application envi- ronment, the parallel I/O system is a shared re- source which usually impacts the I/O performance delivered to the simultaneously running applica- tions. In addition, when file data in a parallel I/O system are spread across several nodes, failure of a node will make the data stored in that node unavailable. This is especially catastrophic for long-running scientific computations. Intuitively, with duplicated resources in a cluster, failure of a node may be masked or tolerated with perhaps a slight degradation of the service. But, so far this potential capability in data availability has not been fully exploited. We present simulation results showing that the proposed I/O scheduling algorithms can produce a substantial improvement over previous I/O scheduling algorithms.

The rest of the paper is organized as follows. Section 2 is an overview of the system of inter- est and related work. Section 3, discusses the proposed parallel I/O scheduling algorithms. The performance analysis of the proposed scheduling policies is discussed in Section 4. The results and discussions of the experiments are presented in Section 5. The conclusions and future direc- tions axe given in Section 6.

2. Background

Parallel I/O has recently drawn increasing at- tention as a promising approach to alleviating I/O bottlenecks in cluster computing. In this section, we will present the system model assumed in this paper. The scheduling problem and related work are also briefly described.

2.1. System Model

Figure 1 shows the architecture of high perfor- mance cluster computing system of interest. Such parallel I/O architectures consisting of multiple disks connected with high bandwidth interconnect are the norm in high-performance data centers and

1119

Authorized licensed use limited to: IEEE Xplore. Downloaded on December 10, 2008 at 20:33 from IEEE Xplore. Restrictions apply.

Page 4: Deakin Research Onlinedro.deakin.edu.au/eserv/DU:30006072/abawajy-parallelIO-2006.pdf · ubiquity of cluster computing has grown in the past decade, so did the execution of data intensive

supercomputing installations [22].

Staraw Resource Manawr

Figure 1. Architecture of the system.

The system consists of a set of M independent processors, P = {PI, P2, ..., PM}, and a set of N independent disks, S = {Sl, S2, ..., SN), that are connected by a fast interconnection network. This hadware configuration is currently supported by networks of workstations (NOWs) and by multi- computers (e.g., the IBM SP) and is likely to re- main popular in the future b e u s e of the e m nomic and physical attributes of such architec- tures [J].

Data is distributed among the disks to enable simiiltanentis parallel amesa. Data is ~ t n d nn

the disks in units of blocks; a block is the unit of access fiom a disk. In each parallel 1/0 operation a set of up to N blocks, one from each disk, can be accessed. The blocks fetched from the disks may be buffered in an internal memory buffer until they are required.

To achieve a high degree of data availability in parallel 110 systems, two basic approaches are currently being used. In the first strategy, data are replicated and multiple copies of the same data are stored on different disks. When one copy Eails, the other copies can continue to be used, if they are updated synchronously. The failure is thus trans- parent to the users and no interruption of the ser- vices will occur. In the second strategy, data are spread across an array of disk drives along with the redundant error detw.kion/correction information, e.g., parity bytes. When errors are discovered, the redundant information can be used to restore the data and application programs can continue using

the data. In this paper, we use the first strategy. In this paper, we assume that a variety of work-

load types generated by a community of users, which include parallel applications and a stream of local jobs compete for system resources. The parallel workloads of interest to us are those characterized as the CPU-110 bound applics tions [16] [15]. These applications demand a great deal from underlying storage systems and soft- ware, and both high-performance distributed stor- age and high level interfaces have been developed to fill these needs. However, it is a challenge to schedule and coordinate the 110s of myriad con- current devices to meet the resource constraiuts and timing demands of the applications. The fol- lowing subsection briefly introduces the scheduling problem and related work.

All 1/0 requests fiom a task is sent to the stor- age resource manager (i.e., data scheduler) in the 1/0 subsystem, which coordinates the 1 /0 request on multiple I/O nodes for greater efficiency. In this manner, the parallelism of the user applica- tion can be preserved when performing I/O. It is easy to imagine that for a large parallel applica- tion, a large number of 1/0 requests might be in service on an 1/0 Scheduler at one time. This large number of 1/0 requests provide us with an opportunity to optimize by selecting the order in which jobs will be serviced.

A critical but often ignored component of sys- tem performance in cluster computing is the 1/0 subsystem [23]. In these environments it is desir- able to provide QoS-based allocation of disk band- width to different applications sharing the I/O system. Thus, two issues of concern in multi- programmed cluster computillg are reducing the performance gap and providing fault-tolerance for long running applications. Even when considered separately the two problems are challenging. In the following section, we discuss the scheduling problem addressed in this paper.

2.2. Problem Statement

When several concurrent applications are simul- taneously sharing the 1/0 system, the scheduling of the I/O requests becomes more complicated.

1120

Authorized licensed use limited to: IEEE Xplore. Downloaded on December 10, 2008 at 20:33 from IEEE Xplore. Restrictions apply.

Page 5: Deakin Research Onlinedro.deakin.edu.au/eserv/DU:30006072/abawajy-parallelIO-2006.pdf · ubiquity of cluster computing has grown in the past decade, so did the execution of data intensive

Parallel I/O scheduling is concerned with schedul- ing of parallel I/O operations with the goal of min- imizing the overall I/O response times. The par- allel I f 0 scheduling problem can be formulated as shown in Figure 2.

Given

1. a system that consists of a set of M indepen- dent processors, P = {PI, Pz, ..., PM}, and a set of N independent servers (i.e., disks), S = IS1, S2, ..., S N } , that are connected by a fast interconnection network (see Figure 1).

2. a set of M independent applications or tasks concurrently accessing the I/O system. Each task is abstracted by a reference string R, where = 1 5 R, 5 M; Ri is the ordered sequence of blocks that is required by that application.

Scheduling Problem: The problem is to find an assignment of disks to reference strings such that utilization of the disks is maximized while at the same time application response time is minimized.

Figure 2. Parallel 110 Scheduling Problem

There are two objectives of the above parallel scheduling problem: maximizing the utilization of the disks and minimizing the application response time. Two important factors commonly consid- ered in I/O scheduling is the data access time (DAT) and the data transfer time (DTT). Here we focus on strategies that minimize the DTT over- head as the data transfer time is much greater than the access overhead in system we considered. Even when considered separately, the problems are challenging and can be shown to be in a class of NP-complete problems [ l l ] [13]. Therefore, heuristics for I/O scheduling must be used [13].

A number of I/O scheduling heuristics have been described in the literature [25] [15] [I] [8] [Ill [lo] [16] [2] [26]. Most of this algorithms con- sider only an environment where data is not repli- cated and do not address the multiprogramming environments. In prior works, the I/O scheduling

problem was modeled by a bipartite graph. For ex- ample, Durand, et. al. [lo] proposed various bipar- tite graph edge-coloring algorithms for solving the scheduling problems. An edge-coloring-based ap- proximation algorithms for scheduling I/O trans- fers for systems that only allow at most k transfers at a time is discussed in [13].

Two approaches referred to as Highest Destina- tion Degree First (HDDF) and the Lowest Des- tination Degree First (LDDF) are discussed in [a]. A scheduling algorithm called Highest De- gree Lowest Workload First (HDLWF) is proposed in [26]. HDLWF is based on a distributed, two- step scheme that determines appropriate execu- tion order of data requests through a small num- ber of rounds of bidding between clients and I/O servers. HDLWF is a minor modification of an al- gorithm discussed in [16] by the same authors. A class of decentralized parallel I/O scheduling al- gorithms based on edge-coloring and matching of bipartite graphs is discussed in [lo].

Data replication is commonly used for computation-intensive or data-intensive ap- plications on distributed systems, both for reliability and performance reasons [26]. Data replication is necessary to enqure availability of data. Furthermore, data replication is also frequently used for better performance of dis- tributed systems. To obtain better parallel I/O performance, a scheduling algorithm should take data replication into consideration. However, data replication increases the complexity of scheduling, because in addition to deciding the execution order of data transfers, we also need to decide which copy of each data to be used [26].

Parallel I f 0 scheduling in the presence of data replication has been studied in [15] [26]. The scheduling strategies studied in [I51 are based on various knowledge of I/O patterns such as the sum of the service demands of jobs. The problem with the work of [15] is that it is difficult if not im- possible to obtain application I/O a priori. The work of 1151 can be said at best to have theoretical values since the policies proposed are based on a peon' knowledge of the job execution time. Un- fortunately, it is very difficult if not impossible to know the pending I/O service demands of a job.

1121

Authorized licensed use limited to: IEEE Xplore. Downloaded on December 10, 2008 at 20:33 from IEEE Xplore. Restrictions apply.

Page 6: Deakin Research Onlinedro.deakin.edu.au/eserv/DU:30006072/abawajy-parallelIO-2006.pdf · ubiquity of cluster computing has grown in the past decade, so did the execution of data intensive

Our work differs from existing approaches in that the existing parallel I/O scheduling policies focus on uniprogrammed systems that run sin- gle jobs at a time in isolation. In some cases, these techniques have also been extended to mul- tiprogrammed environments that execute multiple parallel jobs simultaneously [ls]. Therefore, most studies have not investigated the potential perfor- mance problems of handling large outstanding I/O requests in a multi-workload environment.

3. Parallel 110 Scheduling Strategies

Parallel I/O is a necessary component of data- intensive applications such as scientific simula- tions. However, it is a challenge to schedule and coordinate the 110s of myriad concurrent devices to meet the resource constraints and timing de- mands of the applications. To make best nse of available parallelism and locality in I/O accesses, it is necessary to design and implement schedul- ing algorithms that schedule I/O requests intelli- gently. To this end, we propose two new adaptive parallel I/O scheduling policies by extending the work reported in [3]. The extension is to direct each application to access data from an 110 node where the data is duplicated, in such a way that requests for data are evenly distributed among I/O nodes.

3.1. Equi-Partition Policy

The Equi-Partition (EQUI) algorithm has two main parts. The first part is to determine a tar- get size (i.e., the number of I/O requests) that can be assigned to an I/O server at scheduling point. Let S = {S1, S2, ..., SN) be a set of independent servers. Let D C S denotes the number of servers that can service the outstanding I/O requests. At each scheduling iteration, the algorithm first de- termines the average number of I/O requests (i.e., Avg) to be handed to each I/O server as follows:

Avg = %ending

D

where Rpending is the number of outstanding I/O requests.

The second part of EQUI is to select appropri- ate I/O server and assign the requests to it. Let ORk be a subset of outstanding I/O requests (i.e., ORk C Rpending) that can be serviced by an I/O server Dk. While not all pending I/O requests are assigned (i.e., D > O), the algorithm selects an I/O server Dj E S with ORk > 0 and the ORk is the lowest among the I/O servers. It then removes a set of min(Avg, ORk) unassigned I/O requests from the I/O request pending queue and forwards it to server Di. This process repeats until allpend- ing I/O requests are assigned to the 110 servers.

3.2. Adaptive Equi-Partition

In the Adaptive Equi-Partition (AEQU) policy, at each scheduling point, the AEQU first deter- mines the average number of I/O requests (i.e., Avg) to be allocated to each I/O server as follows:

Rtotol Avg = - D

where S = {SI, S2, ..., SN) be a set of indepen- dent servers and D & S denotes the number of servers that can service the outstanding I/O re- quests. RtOtal is the total number of outstanding I/O requests and computed as follows:

where Gending is a subset of outstanding I/O re- quwts; and Rbaeklog is the total number of locally backlogged (i.e., assigned to I/O servers but not yet processed I/O requests.

The I/O servers are then sorted in an increasing order based on the total number of locally back- logged I/O requests. The algorithm then assigns pending I/O requests to under loaded I/O servers while re-scheduling I/O requests from overloaded I/O servers onto the under loaded servers.

3.3. Baseline Scheduling Policy

We use the Highest Destination Degree First (HDDF) and the Lowest Destination Degree First (LDDF) [8] as the baseline scheduling policies.

In LDDF policy, I/O requests are mapped to the I/O servers in a round robin fashion. The al- gorithm first sorts the I/O servers in an increasing

1122

Authorized licensed use limited to: IEEE Xplore. Downloaded on December 10, 2008 at 20:33 from IEEE Xplore. Restrictions apply.

Page 7: Deakin Research Onlinedro.deakin.edu.au/eserv/DU:30006072/abawajy-parallelIO-2006.pdf · ubiquity of cluster computing has grown in the past decade, so did the execution of data intensive

order of the pending I/O requests that they can possibly service. Starting with an I/O server that has the lowest number of pending I/O requests, the algorithm removes a pending I/O request for the I/O servers from the queue and assigns it to the server. It then picks the next I/O server, re- moves a pending 110 request for the I/O servers from the queue and assigns it to the server. This process continues until there is no more pending I/O requests.

The HDDF is similar to the LDDF policy ex- cept the algorithm sorts the I/O serevers in a de- creasing order of the pending I/O requests that they can possibly service. It also chooses the I/O server with the highest number of pending I/O re- quests first.

4. Performance Analysis

This section evaluates the performance of the proposed algorithms and compare them with the baseline policies using simulation. We used nor- malized mean response time (MRT) as a perfor- mance metric. We implemented the proposed al- gorithms using event-driven simulator written in C. In the following subsections, we describe the simulation environment and the workloads in de- tail.

The simulator employs network latency and bandwidth, disk latency and bandwidth, synchro- nization cost, and buffer size. These parame- ters are obtained experimentally from a 32-node Pentium-I11 cluster with Myrinet interconnects and IDE disks. The file sizes range from 1 MB to 16 MB. Files were written and read by mak- ing from 1 to 128 request per file. A delay was placed between each request ranging from zero to one second. This delay represents the time for which a real application would perform computa- tion or wait for some reason other than 110. For validation, a batch strategy is used to compute confidence intervals (at least 30 batch runs were used for the results reported in this paper).

We generate two competing I/O workloads syn- thetically. We studied two CPU-I/O bound work- loads referred to as Wl and W2, which are the same workloads used in [15]. These two work-

loads are characterized by alternating CPU and I/O phases that repeat K times as observed in [21] [IS]. However, they differ primarily in the amount of I/O parallelism and when the I/O is performed. The request size of the 110 requests are distributed normally with a mean of 8 blocks of 512 bytes. The ratio of reads to writes is set to two, as used in other QoS work [17]. We use a model of [IS] to determine the proportion of the computation and I/O times for each task.

5. Results and Discussions

In this section, the results of the experiments are discussed. In all experiments, we used 32 nodes for computation and 3 storage nodes unless explicitly specified.

Figure 3. Relative Performance of the Poli- cies.

Figure 3 shows the relative performance of the four I/O scheduling policies for the two workloads. The data shows that the proposed I/O scheduling policies are quite efficient with respect to the base- line policies under both workloads.

Under W2, we observe that: (1) the Lowest Destination Degree First performs somewhat bet- ter than the Hi.ghest Destination Degree First, which confirms with the results reported in [8]; (2) the Equi-partition policy performs better than both the Lowest Destination Degree First and the Highest Destination Degree First policies. This is

1123

Authorized licensed use limited to: IEEE Xplore. Downloaded on December 10, 2008 at 20:33 from IEEE Xplore. Restrictions apply.

Page 8: Deakin Research Onlinedro.deakin.edu.au/eserv/DU:30006072/abawajy-parallelIO-2006.pdf · ubiquity of cluster computing has grown in the past decade, so did the execution of data intensive

because the Equi-partition policy distributed the I/O requests in a balanced fashion over the I/O servers whereas the other three policies do not; and (3) the Adaptive Equi-partition is the best as this policy allocates pending I/O requests as well as move unprocessed I/O requests from heavy loaded to lightly loaded I/O servers.

Under W1 Workload, the graph shows that the Equi-partition policy performs better than the Lowest Destination Degree First and Highest Des- tination Degree Fir.9t policies. This is because the Equi-partition policy distributed the I/O requests in a balanced fashion over the I/O servers whereas the baseline policies do not. The Adaptive Equi- partition is the best as this policy allocates pend- ing I/O requests a7 well as move unprocessed I/O requests from heavy loaded to lightly loaded I/O servers.

6. Conclusions and Future Directions

Parallel I/O is a necessary component of data- intensive applications such as scientific simula- tions. As a result, parallel I/O architectures are increasingly deployed for high performance com- puting and in shared data centers. Thus, the I/O bottleneck in cluster computing systems has re- cently begun receiving increasing attention. In this paper, we addressed the problem of effective management of parallel I/O in multiprogrammed cluster computing systems by using appropriate I/O scheduling strategies. We presented two new parallel I/O scheduling policies and demonstrated their effectiveness by comparing their performance with two other existing parallel I/O scheduling policies.

We are currently investigating their perfor- mance through experimentation with 110 traces taken from the scientific and non-scientific ap- plication domaim, including web-servers and interactive applications. We are also looking at implementing and testing the proposed scheduling policies on.Using knowledge of the application domain, it is possible to achieve much more efficient I/O than more general solution. In this paper we assumed homogeneous cluster computing environment. We plan to study the

performance of the proposed scheduling policies in heterogeneous clusters.

Acknowledgments Financial support is pro- vided by Deakin University. My thanks to Maliha Omar (Shubbee) without whom I could not have completed this report.

References

[I] J. H. Abawajy. Parallel I/O scheduling in multi- programmed cluster computing systems. In Pro- ceedings of the ICCS 2009, pages 223 - 229,2003.

[2] J. H. Abawajy. Performance analysis of parallel I/O scheduling approaches on cluster computing systems. In Proceedings ofIEEE 3rd International Symposium on Cluster Computing and the Grid, pages 724-729,2001.

[3] J . H. Abawajy. Adaptive parallel I/O scheduling algorithm for multiprogrammed systems. Journal of Future Genemtion System, 22(5), 2006.

[4] R. Buyya. High Performance Clrister Computing: Architectures and Systems, volume 1 and 2. Pren- tice Hall PTR, NJ, USA, 1999.

[5] P. H. Cams, W. B. L. 111, R. B. Ross, and R. Thakur. Pvfs: A parallel file system for linux clusters. In Proceedings of the 4th Annual Linuz Showcase and Conleresce, pages 317-327,2000.

[6] C. Cerin. Parallel 110 for Cluster Computing. Butterworth-Heinemanu, 2004.

[7] F. Chen and S. Majumdar. Performance of paral- lel I/O scheduling strategies on a network of work- stations. In Proceedings of iCPADS'O1, pages 157-164,2001.

[8] F. Chen and S. Majumdas. Performance of paral- lel I/O scheduling strategies on a network of work- stations. In Proceedings of the iEEE International Conference on Parallel and Distributed Systems, pages 157-164,2001.

[9] P. M. Dickens. A performance study of two- phase i/o. In Euro-Par '98: Proceedings of the 4th international Euro-Par Conference on PamC lel Processing, pages 95S965, London, UK, 1998. Springer-Verlag.

[10] D. Durand, R. Jain, and D. Tseytlin. Paral- lel I/O scheduling using randomized, distributed edge coloring algorithms. 63:611-618, 2003.

[ l l ] A. Gulati. Scheduling with QoS in parallel i/o systems. In Workshop on Stomge Network Arehi- tectures and Parallel I / 0 , 2004.

1121 J. Huber, C. L. Elford, D. A. Reed, A. A. Chien, and D. S. Blument,hal. Ppfs: A high performance

1124

Authorized licensed use limited to: IEEE Xplore. Downloaded on December 10, 2008 at 20:33 from IEEE Xplore. Restrictions apply.

Page 9: Deakin Research Onlinedro.deakin.edu.au/eserv/DU:30006072/abawajy-parallelIO-2006.pdf · ubiquity of cluster computing has grown in the past decade, so did the execution of data intensive

portable parallel file system. In Proceedings of 9th ACM International Conference on Supercomput- ing, pages 485-394, 1995.

[13] R. Jain, K. Somalwas, J. Werth, and J. C. Brown. Heuristics for scheduling I/O operations. IEEE IPrans. On Parnllel and Distributed Sys- tems, 8(3):310-320, 1997.

1141 T. Kimbrel, P. Cao, E. W. Felten, A. R. Kar- lm, and I<. Li. Integrated parallel prefetching and caching. In Proceedangs of the ACM SIGMET- RICS, pages 262-263, 1996.

1151 P. Kwong and S. Majumdar. Scheduling of I/O in multiprogrammed parallel systems. Journal of Informatics, 23(1):67-76, 1999.

[16] P. Lin, D.-W. TVang, and J.-J. Wu. Efficient par- allel I/O scheduling in the presence of data du- plication. In Proceedings of the the International Conference on Parnllel Processing, pages 231-238, 2003.

[17] C. Lumb, A. Merchant, and G. Alvarez. Facade: Virtual storage devices with performance guaran- tees. In Proceedings of Conference on File and Storage Technologies, 2003.

[18] S. Majumdar and F. Shad. Characterization and management of I/O in multiprograrnmed paral- lel systems. In Proceedimigs of Pamllel and Dis- tributed Processing, pages 502-510, 1995.

[19] N. Nieuwejaar. Galley: A new parallel file system for scientific workload, 1996.

[20] J. No, R. Thakur, and A. Choudhary. High- performance scientific data management system. Jounlal of Parallel and Distributed Conzputing, 64(4):434-447, 2003.

[21] B. I<. Pasquale and G. C. Polyzos. Dynamic i/o characterization of I/O intensive scientific appli- cations. In Proceedings of Suyercomnputer Confer- ence, pages 660-669,1994.

[22] R. Ross. Reactive scheduling for parallel i/o sys- tems, 2000.

[23] R. Ross and W. Ligon. Server-Side Scheduling in Cluster Parnllel 1/0 Systems. Kogan Page, 2004.

[24] R. Thakur, W. Gropp, and E. Lusk. On imple- menting mpi-io portably and with high perfor- mance. In Proceedings of the Sixth Workshop on 1/0 in Pamllel and Distributed Systems, pages 23-32, 1999.

1251 J.-J. Wu, Y.-F. Kin, and P. Liu. Efficient dis- . . tributed algorithms for parallel i/o scheduling. In Proceedings of 11th International Conference on Pamllel and D~qtributed System, pages 460-466, 2005.

[26] J.-J. TVu and P. Liu. Distributed scheduling of parallel I/O in the presence of data replica- tion. In Proceedings of 19th IEEE International

Parallel and Distributed Processing Symposium (IPDPS105), page 49, 2005.

[27] Y. Zhu, H. Jiang, X. Qin, D. Feng, and D. Swan- son. Improved read performance in a Cost- Effective, Fault-Tolerant Parallel Virtual File Sys- tem (CEFT-PVFS). In Proceeding of IEEE/ACM International Symposium on CIuster Computing and the Grid (CCGRID), May 2003.

1125

Authorized licensed use limited to: IEEE Xplore. Downloaded on December 10, 2008 at 20:33 from IEEE Xplore. Restrictions apply.