OpenUH: an optimizing, portable OpenMP compiler
Citations Over TimeTop 10% of 2007 papers
Abstract
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.
Related Papers
- → A kripke logical relation between ML and assembly(2011)60 cited
- → MPI-aware compiler optimizations for improving communication-computation overlap(2009)43 cited
- → Advice on structuring compilers and proving them correct(1973)129 cited
- → The use of compiler optimizations for embedded systems software(2008)7 cited
- → A Case-Based Reasoning Approach to Find Good Compiler Optimization Sequences(2013)2 cited