8. UPC Libraries

  1. Tarek El-Ghazawi1,
  2. William Carlson2,
  3. Thomas Sterling3 and
  4. Katherine Yelick4

Published Online: 27 JAN 2005

DOI: 10.1002/0471478369.ch8

UPC: Distributed Shared Memory Programming

UPC: Distributed Shared Memory Programming

How to Cite

El-Ghazawi, T., Carlson, W., Sterling, T. and Yelick, K. (2005) UPC Libraries, in UPC: Distributed Shared Memory Programming, John Wiley & Sons, Inc., Hoboken, NJ, USA. doi: 10.1002/0471478369.ch8

Author Information

  1. 1

    The George Washington University, USA

  2. 2

    IDA Center for Computing Sciences, USA

  3. 3

    California Institute of Technology, USA

  4. 4

    University of California at Berkeley, USA

Publication History

  1. Published Online: 27 JAN 2005
  2. Published Print: 13 MAY 2005

Book Series:

  1. Wiley Series on Parallel and Distributed Computing

Book Series Editors:

  1. Albert Y. Zomaya

ISBN Information

Print ISBN: 9780471220480

Online ISBN: 9780471478362



  • UPC collective library;
  • application program interfaces (APIs);
  • Intel Paragon File System (PFS)


The UPC programming language embodies two standard libraries, one is for collective operations and the other is for parallel I/O. The collective operations library focuses on data re-localization, which is to redistribute the data or reassign its affinity. These operations are quite helpful when the initial data distribution cannot effectively serve all phases of the application and each phase can benefit from a different distribution. The collective operations library also include mathematical functions that can help integrate results from the computing threads. The I/O library supports collective reads and writes into and from a file effectively. It provides for contiguous as well as list I/O. Both synchronous and asynchronous versions of the calls are provided in order to hide IO latencies when possible.