This Article 
 Bibliographic References 
 Add to: 
Tight Bounds for Prefetching and Buffer Management Algorithms for Parallel I/O Systems
December 1999 (vol. 10 no. 12)
pp. 1262-1275

Abstract—The I/O performance of applications in multiple-disk systems can be improved by overlapping disk accesses. This requires the use of appropriate prefetching and buffer management algorithms that ensure the most useful blocks are accessed and retained in the buffer. In this paper, we answer several fundamental questions on prefetching and buffer management for distributed-buffer parallel I/O systems. First, we derive and prove the optimality of an algorithm, P-min, that minimizes the number of parallel I/Os. Second, we analyze P-con, an algorithm that always matches its replacement decisions with those of the well-known demand-paged MIN algorithm. We show that P-con can become fully sequential in the worst case. Third, we investigate the behavior of on-line algorithms for multiple-disk prefetching and buffer management. We define and analyze P-lru, a parallel version of the traditional LRU buffer management algorithm. Unexpectedly, we find that the competitive ratio of P-lru is independent of the number of disks. Finally, we present the practical performance of these algorithms on randomly generated reference strings. These results confirm the conclusions derived from the analysis on worst case inputs.

[1] S. Albers, “On the Influence of Lookahead in Competitive Paging Algorithms,” Algorithmica, vol. 18,pp. 283–305, 1997.
[2] R.D. Barve, M. Kallahalla, P.J. Varman, and J.S. Vitter, “Competitive Parallel Disk Prefetching and Buffer Management,” ACM Fifth Ann. Workshop I/O in Parallel and Distributed Systems, pp. 47–56, 1997.
[3] 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.
[4] L.A. Belady, “A Study of Replacement Algorithms for Virtual Storage,” IBM Systems J., vol. 5, no. 5,pp. 78–101, 1966.
[5] 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.
[6] P.M. Chen, E.K. Lee, G.A. Gibson, R.H. Katz, and D.A. Patterson, "RAID: High-Performance Reliable Secondary Storage," ACM Computing Surveys, vol. 36, no. 3, pp. 145-185, Aug. 1994.
[7] M.D. Dahlin, R.Y. Wang, T.E. Anderson, and D.A. Patterson, “Cooperative Caching: Using Remote Client Memory to Improve File System Memory,” Proc. First Symp. Operating Systems Design and Implementation, pp. 267–280, 1994.
[8] D. Breslauer, “On Competitive On-line Paging with Lookahead,” Proc. 23rd Symp. Theoretical Aspects of Computer Science, pp. 593–603, 1996.
[9] J.M. del Rosario, A.N. Choudhary, “High Performance I/O for Massively Parallel Computers: Problems and Prospects,” Computer, vol. 27, no. 3,pp. 59–68, 1994.
[10] G.A. Gibson, D. Nagle, K. Amiri, F.W. Chang, E.M. Feinberg, H. Gobioff, C. Lee, B. Ozceri, E. Riedel, D. Rochberg, and J. Zelenka, “File Server Scaling with Network-Attached Secure Disks,” Proc. SIGMETRICS Conf. Measurement and Modeling of Computer Systems, June 1997.
[11] M. Kallahalla, P. Varman, “Improving Parallel-Disk Buffer Management Using Randomized Writeback,” Proc. 1998 Int'l Conf. Parallel Processing, pp. 270–277, 1998.
[12] K. Keeton, D. Patterson, and J.M. Hellerstein, “A Case for Intelligent Disks (IDISKS),” ACM SIGMOD Record, vol. 27, no. 3,pp. 42–52, 1998.
[13] T. Kimbrel and A.R. Karlin, “Near-Optimal Parallel Prefetching and Caching,” Proc. 37th IEEE Symp. Foundations of Computer Science, pp. 540–549, Oct. 1996.
[14] 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.
[15] G. Ma and A.L.N. Reddy, “An Evaluation of Storage Systems Based on Network-Attached Disks,” Proc. 1998 Int'l Conf. Parallel Processing, pp. 278–285, 1998.
[16] 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.
[17] 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.
[18] A.L.N. Reddy and P. Banerjee, “Design, Analysis, and Simulation of I/O Architectures for Hypercube Multiprocessors,” IEEE Trans. Parallel and Distributed Computing, vol. 1, no. 2,pp. 140–151, 1990.
[19] D. Sleator and R. Tarjan, “Amortized Efficiency of List Update and Paging Rules,” Comm. ACM, vol. 28, no. 2, pp. 202–208, 1985.
[20] P. Varman, “Randomized Parallel Prefetching and Buffer Management,” Proc. Workshop Randomized Parallel Computing, pp. 363–372, 1998.
[21] J.S. Vitter and E.A.M. Shriver, “Optimal Algorithms For Parallel Memory 1: Two-Level Memories,” Algorithmica, vol. 12, nos. 2-3,pp. 110–147, 1994.

Index Terms:
Parallel I/O, algorithms, prefetching, caching, buffer management, competitive ratio, multiple-disk systems, external memory.
Peter J. Varman, Rakesh M. Verma, "Tight Bounds for Prefetching and Buffer Management Algorithms for Parallel I/O Systems," IEEE Transactions on Parallel and Distributed Systems, vol. 10, no. 12, pp. 1262-1275, Dec. 1999, doi:10.1109/71.819948
Usage of this product signifies your acceptance of the Terms of Use.