The Parallel Data Laboratory has been an active participant in the development of the SIO low-level application programming interface. The interface was formally introduced to the parallel computing community at Supercomputing '96.
Information related to the specification:
If you are interested in the full specification of the SIO low-level
API, a postscript copy is available through the links at the top of
the page.
The primary goal of the API is expressing, in a portable manner, primitives that allow efficient utilization of high bandwidth storage and network I/O devices. It is intended to be sufficiently complete to support many styles of I/O, but functionality and performance are chosen over simplicity and ease of programming. Consequently, the API is primarily one for "tool writers" or highly sophisticated application programers. Another key design goal is to allow application parallelism to be reflected in the I/O subsystem. Hence, the interface does not imply or require synchronization.
Briefly, the high level goals of the interface are to:
The interface contains the following features: