This Article 
 Bibliographic References 
 Add to: 
PC-OPT: Optimal Offline Prefetching and Caching for Parallel I/O Systems
November 2002 (vol. 51 no. 11)
pp. 1333-1344

Abstract—We address the problem of prefetching and caching in a parallel I/O system and present a new algorithm for parallel disk scheduling. Traditional buffer management algorithms that minimize the number of block misses are substantially suboptimal in a parallel I/O system where multiple I/Os can proceed simultaneously. We show that in the offline case, where a priori knowledge of all the requests is available, PC-OPT performs the minimum number of I/Os to service the given I/O requests. This is the first parallel I/O scheduling algorithm that is provably offline optimal in the parallel disk model. In the online case, we study the context of global L-block lookahead, which gives the buffer management algorithm a lookahead consisting of L distinct requests. We show that the competitive ratio of PC-OPT, with global L-block lookahead, is \Theta (M - L + D), when L <M, and \Theta (M D / L), when L > M, where the number of disks is D and buffer size is M.

[1] A. Aggarwal and J. S. Vitter, The Input/Output Complexity of Sorting and related Problems Comm. ACM, vol. 31, no. 9, pp. 1116-1127, 1988.
[2] S. Albers, “On the Influence of Lookahead in Competitive Paging Algorithms,” Algorithmica, vol. 18, no. 3, pp. 283-305, July 1997.
[3] S. Albers, N. Garg, and S. Leonardi, “Minimizing Stall Time in Single and Parallel Disk Systems,” J. ACM, vol. 47, no. 6, pp. 969-986, Nov. 2000.
[4] D. Aksoy and M. Franklin, Rxw: A Scheduling Approach for Large-Scale On-Demand Data Broadcast IEEE/ACM Trans. Networking, vol. 7, no. 6, pp. 846-860, 1999.
[5] L.M. Baptist and T.H. Cormen, “Multidimensional, Multiprocessor, Out-of-Core FFTs with Distributed Memory and Parallel Disks,” Proc. 11th Ann. ACM Symp. Parallel Algorithms and Architectures, June 1999.
[6] R.D. Barve, E.F. Grove, and J.S. Vitter, “Simple Randomized Mergesort on Parallel Disks,” Parallel Computing, vol. 23, no. 4,pp. 601–631, 1997.
[7] R.D. Barve, M. Kallahalla, P.J. Varman, and J.S. Vitter, “Competitive Parallel Disk Prefetching and Buffer Management,” J. Algorithms, vol. 36, no. 2, pp. 152-181, Aug. 2000.
[8] L.A. Belady, “A Study of Replacement Algorithms for a Virtual Storage Computer,” IBM Systems J., vol. 5, no. 2, pp. 78-101, 1966.
[9] D. Breslauer, “On Competitive On-line Paging with Lookahead,” Proc. 23rd Symp. Theoretical Aspects of Computer Science, pp. 593–603, 1996.
[10] P. Cao, E. Felten, A. Karlin, and K. Li, “A Study of Integrated Prefetching and Caching Strategies,” Proc. ACM SIGMETRICS Conf. Measurement and Modeling of Computer Systems, pp. 188–197, 1995.
[11] F. Chang and G. Gibson, "Automatic I/O Hint Generation Through Speculative Execution," Proc. 3rd Symp. Operating System Design and Implementation,Usenix, Berkeley, Calif., 1999, pp. 1-14.
[12] T.H. Cormen and M. Hirschl, “Early Experiences in Evaluating the Parallel Disk Model with the ViC* Implementation,” Parallel Computing, vol. 23, nos. 4-5, pp. 571-600, June 1997.
[13] O. Ertug, M. Kallahalla, and P. Varman, “Real-Time Parallel Disk Scheduling for VBR Video Servers,” Proc. Fifth Int'l Conf. Computer Science and Informatics, Feb. 2000.
[14] A. Fiat, R. Karp, M. Luby, L.A. McGeoch, D. Sleator, and N.E. Yong, "Competitive Paging Algorithms," J. Algorithms, vol. 12, pp. 685-699, 1991
[15] M. Kallahalla and P.J. Varman, Optimal Read-Once Parallel Disk Scheduling Proc. Workshop on I/O in Parallel and Distributed Systems (IOPADS), pp. 68-77, 1999.
[16] A.R. Karlin, M.S. Manasse, L. Rudolph, and D.D. Sleator, “Competitive Snoopy Caching,” Algorithmica, vol. 5, no. 3, pp. 79-119, Mar. 1988.
[17] T. Kimbrel and A.R. Karlin, “Near-Optimal Parallel Prefetching and Caching,” SIAM J. Computing, vol. 29, no. 4, pp. 1051-1082, 2000.
[18] D.F. Kotz and C.S. Ellis, “Prefetching in File Systems for MIMD Multiprocessors,” IEEE Trans. Parallel and Distributed Computing, vol. 1, no. 2,pp. 218–230, 1990.
[19] L.A. McGeoch and D.D. Sleator, “A Strongly Competitive Randomized Paging Algorithm,” Algorithmica, vol. 6, pp. 816-825, 1991.
[20] P. Sanders, S. Egner, and J. Korst, Fast Concurrent Access to Parallel Disks Proc. 11th ACM-SIAM Symp. Discrete Algorithms, pp. 849-858, 2000.
[21] V.S. Pai, A.A. Schäffer, and P.J. Varman, “Markov Analysis of Multiple-Disk Prefetching Strategies for External Merging,” Theoretical Computer Science, vol. 12,pp. 211–239, 1994.
[22] R.H. Patterson, G. Gibson, E. Ginting, D. Stodolsky, and J. Zelenka, "Informed Prefetching and Caching," Proc. 15th ACM Symp. Operating Systems Principles, pp. 79-95, Dec. 1995.
[23] D. Sleator and R. Tarjan, “Amortized Efficiency of List Update and Paging Rules,” Comm. ACM, vol. 28, no. 2, pp. 202–208, 1985.
[24] P.J. Varman and R.M. Verma, “Tight Bounds for Prefetching and Buffer Management Algorithms for Parallel I/O Systems,” IEEE Trans. Parallel and Distributed Systems, pp. 1262-1275, Dec. 1999.
[25] J.S. Vitter and E.A.M. Shriver, “Optimal Algorithms for Parallel Memory I: Two-Level Memories,” Algorithmica, vol. 12, nos. 2-3, pp. 110-147, 1994.

Index Terms:
Parallel I/O systems, caching, prefetching, scheduling, buffer management, competitive ratio, algorithms, online algorithm, offline algorithm.
Mahesh Kallahalla, Peter J. Varman, "PC-OPT: Optimal Offline Prefetching and Caching for Parallel I/O Systems," IEEE Transactions on Computers, vol. 51, no. 11, pp. 1333-1344, Nov. 2002, doi:10.1109/TC.2002.1047757
Usage of this product signifies your acceptance of the Terms of Use.