Active Message Applications Programming Interface and Communication Subsystem Organization
Alan M. Mainwaring and David E. Culler
EECS Department, University of California, Berkeley
Technical Report No. UCB/CSD-96-918
, 1996
High-performance network hardware is advancing, with multi-gigabit link bandwidths and sub-microsecond switch latencies. Network-interface hardware also continues to evolve, although the design space remains large and diverse. One critical abstraction, a simple, portable, and general-purpose communications interface, is required to make effective use of these increasingly high-performance networks and their capable interfaces. Without a new interface, the software overheads of existing ones will dominate communication costs, and many applications may not benefit from the advancements in network hardware. <p> This document specifies a new active message communications interface for these networks. Its primitives, in essence an instruction set for communications, map efficiently onto underlying network hardware and compose effectively into higher-level protocols and applications. For high-performance implementations, the interface enables direct application-network interface interactions. In the common case, for applications exhibiting locality in communication, these interactions bypass the operating system. To enable the construction of large-scale, general-purpose systems, the interface supports the protected multiprogramming of many users onto finite network resources. This document also describes a prototype system that uses the virtual-memory facilities of the Solaris operating system to implement virtual networks that support protected, network multiprogramming. The system caches the active communication endpoints in network-interface memory and demand-pages them between the host and network-interface memories.
BibTeX citation:
@techreport{Mainwaring:CSD-96-918, Author= {Mainwaring, Alan M. and Culler, David E.}, Title= {Active Message Applications Programming Interface and Communication Subsystem Organization}, Year= {1996}, Month= {Oct}, Url= {http://www2.eecs.berkeley.edu/Pubs/TechRpts/1996/5768.html}, Number= {UCB/CSD-96-918}, Abstract= {High-performance network hardware is advancing, with multi-gigabit link bandwidths and sub-microsecond switch latencies. Network-interface hardware also continues to evolve, although the design space remains large and diverse. One critical abstraction, a simple, portable, and general-purpose communications interface, is required to make effective use of these increasingly high-performance networks and their capable interfaces. Without a new interface, the software overheads of existing ones will dominate communication costs, and many applications may not benefit from the advancements in network hardware. <p> This document specifies a new active message communications interface for these networks. Its primitives, in essence an instruction set for communications, map efficiently onto underlying network hardware and compose effectively into higher-level protocols and applications. For high-performance implementations, the interface enables direct application-network interface interactions. In the common case, for applications exhibiting locality in communication, these interactions bypass the operating system. To enable the construction of large-scale, general-purpose systems, the interface supports the protected multiprogramming of many users onto finite network resources. This document also describes a prototype system that uses the virtual-memory facilities of the Solaris operating system to implement virtual networks that support protected, network multiprogramming. The system caches the active communication endpoints in network-interface memory and demand-pages them between the host and network-interface memories.}, }
EndNote citation:
%0 Report %A Mainwaring, Alan M. %A Culler, David E. %T Active Message Applications Programming Interface and Communication Subsystem Organization %I EECS Department, University of California, Berkeley %D 1996 %@ UCB/CSD-96-918 %U http://www2.eecs.berkeley.edu/Pubs/TechRpts/1996/5768.html %F Mainwaring:CSD-96-918