Abstract
In compiling I/O intensive operations, it is important to pay attention to the operating system features available for enhancing I/O performance. One such useful feature implemented by several current operating system is the write-back facility, in which the output data is cached in main memory buffers and then slowly written to disks. Since the buffers are of limited size, this feature can be made much more effective if the compiler can transform very large output operations into a sequence of smaller operations. In this paper, we present a static analysis technique through which the compiler can perform such transformations automatically.
This research was supported by NSF CAREER award ACI-9733520 and NSF grant CCR-9808522
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Anurag Acharya, Mustafa Uysal, Robert Bennett, Assaf Mendelson, Michael Beynon, Jeffrey K. Hollingsworth, Joel Saltz, and Alan Sussman. Tuning the performance of I/O intensive parallel applications. In Proceedings of the Fourth Annual Workshop on I/O in Parallel and Distributed Systems (IOPADS). ACM Press, May 1996.
Alfred V. Aho, Ravi Sethi, and Jeffrey D. Ullman. Compilers: Principles, Techniques, and Tools. Addison-Wesley, 1986.
John R. Allen and Ken Kennedy. Automatic loop interchange. In Proceedings of the ACM Sigplan’ 84 Symposium on Compiler Construction, pages 233–246. ACM Press, June 1984.
Alok Choudhary, Rajesh Bordawekar, Michael Harry, Rakesh Krishnaiyer, Ravi Ponnusamy, Tarvinder Singh, and Rajeev Thakur. PASSION: Parallel and scalable software for input-output. Technical Report SCCS-636, NPAC, September 1994. Also available as CRPC Report CRPC-TR94483.
David Kotz. Disk-directed I/O for MIMD multiprocessors. Technical Report PCS-TR94-226, Department of Computer Science, Dartmouth College, July 1994.
Todd C. Mowry, Angela K. Demke, and Orran Krieger. Automatic compiler-inserted i/o prefetching for out-of-core applications. In Proceedings of the Second Symposium on Operating Systems Design and plementation (OSDI’ 96), Nov 1996.
M. Paleczny, K. Kennedy, and C. Koelbel. Compiler support for out-of-core arrays on parallel machines. In Proceedings of the Fifth Symposium on the Frontiers of Massively Parallel Computation, pages 110–118. IEEE Computer Society Press, February 1995.
Rajeev Thakur, Rajesh Bordawekar, and Alok Choudhary. Compilation of out-of core data parallel programs for distributed memory machines. In Proceedings of the IPPS’94 Second Annual Workshop on Input/Output in Parallel Computer Systems, pages 54–72, April 1994. Also appears in ACM Computer Architecture News, Vol. 22,No.4, September 1994.
Michael Wolfe. High Performance Compilers for Parallel Computing. Addison-Wesley, 1995.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Agrawal, G. (1999). I/O Granularity Transformations. In: Chatterjee, S., et al. Languages and Compilers for Parallel Computing. LCPC 1998. Lecture Notes in Computer Science, vol 1656. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48319-5_5
Download citation
DOI: https://doi.org/10.1007/3-540-48319-5_5
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66426-0
Online ISBN: 978-3-540-48319-9
eBook Packages: Springer Book Archive