@InProceedings{reddy:compiler, author = {A. L. Narasimha Reddy and P. Banerjee and D. K. Chen}, title = {Compiler Support for Parallel {I/O} Operations}, booktitle = {Proceedings of the 1991 International Conference on Parallel Processing}, year = {1991}, pages = {II:290--II:291}, publisher = {CRC Press}, address = {St. Charles, IL}, earlier = {reddy:compiler-tr}, keywords = {parallel I/O, pario-bib, compilers}, comment = {This version is only 2 pages. reddy:compiler-tr provides the full text. They discuss three primary issues. 1) Overlapping I/O with computation: the compiler's dependency analysis is used to decide when some I/O may be moved up and performed asynchronously with other computation. 2) Parallel execution of I/O statements: {\em if} all sizes are known at compile time, the compiler can insert seeks so that processes can access the file independently. When writing in the presence of conditionals they even propose skipping by the maximum and leaving holes in the file, and they claim that this doesn't hurt (!). 3) Parallel format conversion: again, if there are fixed-width fields the compiler can have processors seek to different locations, read data independently, and do format conversion in parallel. Really all this is saying is that fixed-width fields are good for parallelism, and that compilers could take advantage of them.} }