x
Loading
 Loading
Hello, Guest | Login | Register

The Global Arrays Toolkit

This month’s column introduces the Global Arrays Toolkit (GA, http://www.emsl.pnl.gov/docs/global/), a suite of application programming interfaces (API’s) for handling distributed data structures.

Continuing with the theme of simplifying parallel programming, this month’s column introduces the Global Arrays Toolkit (GA, http://www.emsl.pnl.gov/docs/global/), a suite of application programming interfaces (API’s) for handling distributed data structures.
The previous three columns discussed Unified Parallel C (UPC), an extension of C 99 that supports explicit parallel execution and a shared address space. UPC provides automatic memory management across distributed (and shared) memory hardware without requiring explicit message passing.
Like UPC, GA provides a mechanism for shared-memory style programming in a distributed memory computing environment. Unlike UPC, GA works in conjunction with traditional message passing APIs — in particular, the Message Passing Interface (MPI) — to offer both shared-memory and message-passing paradigms in the same program. In both UPC and GA, data distribution information (that is, the affinity of data to processes) is available to the application so that data locality can be exploited to maximize performance.
The GA toolkit was developed at the U.S. Department of Energy’s Pacific Northwest National Laboratory (PNNL), where it is still undergoing significant development and enhancement. Version 4.0 was recently released in April 2006. GA has been in the public domain since 1994, and is used in a number of high performance computing (HPC) simulation codes. In particular, GA is used extensively by PNNL’s NWChem computational quantum chemistry package.
GA uses the Aggregate Remote Memory Copy (ARMCI) library, an API that provides general-purpose, efficient, and portable remote memory access (RMA) operations through one-sided…

Please log in to view this content.

Not Yet a Member?

Register with LinuxMagazine.com and get free access to the entire archive, including:

  • Hands-on Content
  • White Papers
  • Community Features
  • And more.
Already a Member?
Log in!
Username

Password

Remember me

Forgotten your password?
Forgotten your username?
Read More
  1. Helpful Tools for Software Developers
  2. The Github Hall of Fame
  3. Book'em, Github.
  4. This Week on Github: Stupid Ruby Tricks
  5. A Veritable Scatter Shot!
Follow Linux Magazine
Rackspace