intrepid.com



GCC UPC (GCC Unified Parallel C)

Posted on Mon, 2006-02-20 16:50

GCCUPC Logo The GCC UPC toolset provides a compilation and execution environment for programs written in the UPC (Unified Parallel C) language. The GCC UPC compiler extends the capabilities of the GNU GCC compiler. The GCC UPC compiler is implemented as a C Language dialect translator, in a fashion similar to the implementation of the GNU Objective C compiler. 

Supported Platforms

At this time, GCC UPC is available on the following platforms:

At this time, no other ports of the GCC UPC compiler have been attempted. If you would like to learn of future ports to other platforms, or would like to discuss the feasibility of implementing GCC UPC on a platform of interest to you, we recommend that join the GCC UPC discussion list.

Documentation

For a quick summary of the switches used to compile and link a UPC program, consult the GCC UPC manual page.

Detailed information on installation and usage of the UPC GCC compiler on a particular platform can be found on the following pages: sgi , cray , xt3, x86 , ia64, amd64.

License

GCC UPC is implemented as an extension to the GNU C Compiler (GCC) and is distributed under the terms of the GNU General Public License.

The GCC UPC Discussion list

The GCC UPC discussion list provides a forum for tracking the status of UPC compilers based on the GNU GCC compiler. Announcements of new compiler ports, future plans, as well as known problems will be posted to the GCC UPC discussion list. To subscribe to the GCC UPC list, send an email message to gcc-upc-request@hermes.gwu.edu with the single word "subscribe" (without the quotes) in the body of the message, or visit the GCC UPC discussion list home page to manage your subscription.

Check out the mailing-list archive at the GWU archives site.

Acknowledgments

The SGI GCC UPC compiler, developed first, is based on the earlier work of Jesse Draper (IDA) and Bill Carlson (IDA). Howard ("Flash") Gordon (NSA) and his organization helped sponsor the development work, and provided invaluable technical feedback at each stage of development. Dr. Tarek El-Ghazawi (GWU and GMU) was instrumental in the effort to refine the UPC specification, and patiently helped us gain an understanding of the UPC language definition. Brian Wibecan (Compaq), both in his participation on the UPC Developer's List and off, provided valuable insight into the more difficult aspects of the UPC language and its implementation. Dan Bonachea and other members of the Berkeley UPC development team furthered our understanding of runtime and synchronization issues, and contributed important refinements to the UPC language definition.