Jump to content

Portals network programming application programming interface

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Autopilot (talk | contribs) at 01:31, 2 October 2009 (Added citation for MPI on Portals). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Portals is a low-level network api for high-performance networking on high-performance computing systems developed by Sandia National Laboratories and the University of New Mexico. Portals is currently the lowest-level network programming interface on the commercially successful XT line of supercomputers from Cray.

Portals began in the early 1990s as an integral component of the SUNMOS operating system[1] and continued to evolve over successive generations of lightweight kernels and massively parallel systems. In 1999, an operational programming interface was given to Portals so that it could be implemented for intelligent and/or programmable network interfaces outside of a lightweight kernel environment.

Portals is based on the concept of elementary building blocks that can be combined to support a wide variety of upper-level network transport semantics. Portals provides one-sided data movement operations, but unlike other one-sided programming interfaces, the target of a remote operation is not a virtual address. Instead, the ultimate destination in memory of an incoming message is determined at the receiver by comparing contents of the message header with the contents of structures at the destination. This flexibility allows for efficient implementations of both one-sided and two-sided communications. In particular, Portals is aimed at providing the fundamental operations necessary to support a high-performance and scalable implementation of the Message Passing Interface Standard.[1] It was also used as the initial network transport layer for the Lustre (file system).

References

  1. ^ a b Ron Brighwell; et al. (1996-06). "Design and Implementation of MPI on Puma Portals". MPI Developer's Conference, 1996. Proceedings., Second. Retrieved 2009-10-01. {{cite journal}}: Check date values in: |date= (help); Explicit use of et al. in: |author= (help)