Evaluating support for global address space languages on the cray X1
The Cray X1 was recently introduced as the first in a new line of parallel systems to combine high-bandwidth vector processing with an MPP system architecture. Alongside capabilities such as automatic fine-grained data parallelism through the use of vector instructions, the X1 offers hardware support for a transparent global-address space (GAS), which makes it an interesting target for GAS languages. In this paper, we describe our experience with developing a portable, open-source and. high performance compiler for Unified Parallel C (UPC), a SPMD global-address space language extension of ISO C. As part of our implementation effort, we evaluate the X1's hardware support for GAS languages and provide empirical performance characterizations in the context of leveraging features such as vectorization and global pointers for the Berkeley UPC compiler. We discuss several difficulties encountered in the Cray C compiler which are likely to present challenges for many users, especially implementors of libraries and source-to-source translators. Finally, we analyze the performance of our compiler on some benchmark programs and show that, while there are some limitations of the current compilation approach, the Berkeley UPC compiler uses the X1 network more effectively than MPI or SHMEM, and generates serial code whose vectorizability is comparable to the original C code.
- Research Organization:
- Lawrence Berkeley National Laboratory (LBNL), Berkeley, CA (United States)
- Sponsoring Organization:
- USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR) (SC-21)
- DOE Contract Number:
- AC02-05CH11231
- OSTI ID:
- 1511291
- Country of Publication:
- United States
- Language:
- English
Similar Records
Performance and Scalability Analysis of Cray X1 Vectorization and Multistreaming Optimization
Cray X1 Evaluation Status Report
A Performance Analysis of the Berkeley UPC Compiler
Conference
·
Sun May 01 00:00:00 EDT 2005
·
OSTI ID:989552
Cray X1 Evaluation Status Report
Technical Report
·
Sun Feb 08 23:00:00 EST 2004
·
OSTI ID:885593
A Performance Analysis of the Berkeley UPC Compiler
Conference
·
Sun Nov 30 23:00:00 EST 2003
·
OSTI ID:1511290