Issue No. 03 - March (1994 vol. 27)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/2.268889
Orran Krieger , IBM Canada
Michael Stumm , IBM Canada
Ron Unrau , IBM Canada
<p>The authors introduce an application-level I/O facility, the Alloc Stream Facility, that addresses three primary goals. First, ASF addresses recent computing substrate changes to improve performance, allowing applications to benefit from specific features such as mapped files. Second, it is designed for parallel systems, maximizing concurrency and reporting errors properly. Finally, its modular and object-oriented structure allows it to support a variety of popular I/O interfaces (including stdio and C++ stream I/O) and to be tuned to system behavior, exploiting a system's strengths while avoiding its weaknesses. On a number of standard Unix systems, I/O-intensive applications perform substantially better when linked to the Alloc facility. Also, modifying applications to use a new interface provided by the facility can improve performance by another factor of two. These performance improvements are achieved primarily by reducing data copying and the number of system calls. Not visible in these improvements is the extra degree of concurrency the facility brings to multithreaded and parallel applications.</p>
M. Stumm, O. Krieger and R. Unrau, "The Alloc Stream Facility: a redesign of application-level stream I/O," in Computer, vol. 27, no. , pp. 75-82, 1994.