OpenUH: an optimizing, portable OpenMP compiler
Authors:
- 3 April 2007
- journal article
- research article
- Published by Wiley in Concurrency and Computation: Practice and Experience
- Vol. 19 (18) , 2317-2332
Abstract
OpenMP has gained wide popularity as an API for parallel programming on shared memory and distributed shared memory platforms. Despite its broad availability, there remains a need for a portable, robust, open source, optimizing OpenMP compiler for C/C++/Fortran 90, especially for teaching and research, for example into its use on new target architectures, such as SMPs with chip multi‐threading, as well as learning how to translate for clusters of SMPs. In this paper, we present our efforts to design and implement such an OpenMP compiler on top of Open64, an open source compiler framework, by extending its existing analysis and optimization and adopting a source‐to‐source translator approach where a native back end is not available. The compilation strategy we have adopted and the corresponding runtime support are described. The OpenMP validation suite is used to determine the correctness of the translation. The compiler's behavior is evaluated using benchmark tests from the EPCC microbenchmarks and the NAS parallel benchmark. Copyright © 2007 John Wiley & Sons, Ltd.Keywords
This publication has 2 references indexed in Scilit:
- ORC-OpenMP: An OpenMP Compiler Based on ORCLecture Notes in Computer Science, 2004
- OdinMP/CCp?a portable implementation of OpenMP for CConcurrency: Practice and Experience, 2000