O'Reilly logo

UPC: DISTRIBUTED SHARED MEMORY PROGRAMMING by Katherine Yelick, Thomas Sterling, William Carlson, Tarek El-Ghazawi

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

CHAPTER 8

UPC Libraries

Libraries provide standard toolsets and interfaces to perform common tasks conveniently by programmers while providing developers the opportunity to optimize and improve the implementations of such tasks for efficient executions. The UPC language has two standard libraries that will soon be integrated into the general language specification. These are the collective library and the I/O library. The collective library defines a set of collective communications and simple operations that can reduce the development time of common and mundane tasks. The I/O library defines parallel operations on files.

Libraries do not only make programming more convenient but also enable high performance. Stating collective and I/O operations as standard application program interfaces (APIs) allows the compiler developers to optimize at a very low level such types of operations for the target architectures. They also provide the programmer with the tools for hiding the latency associated with extensive communications and I/O operations. Full specifications of the collective and I/O libraries are included in Appendixes B and C, respectively. This chapter draws from the material in those specifications to provide a quick summary of the two libraries. Interested readers should refer to these appendixes for more information.

8.1 UPC COLLECTIVE LIBRARY

For many applications, UPC provides programmers with the ability to express locality, which can provide for high-performance execution ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required