NASA NTRS · 20010093216
The Automatic Parallelisation of Scientific Application Codes Using a Computer Aided Parallelisation Toolkit
Abstract
The shared-memory programming model is a very effective way to achieve parallelism on shared memory parallel computers. Historically, the lack of a programming standard for using directives and the rather limited performance due to scalability have affected the take-up of this programming model approach. Significant progress has been made in hardware and software technologies, as a result the performance of parallel programs with compiler directives has also made improvements. The introduction of an industrial standard for shared-memory programming with directives, OpenMP, has also addressed the issue of portability. In this study, we have extended the computer aided parallelization toolkit (developed at the University of Greenwich), to automatically generate OpenMP based parallel programs with nominal user assistance. We outline the way in which loop types are categorized and how efficient OpenMP directives can be defined and placed using the in-depth interprocedural analysis that is carried out by the toolkit. We also discuss the application of the toolkit on the NAS Parallel Benchmarks and a number of real-world application codes. This work not only demonstrates the great potential of using the toolkit to quickly parallelize serial programs but also the good performance achievable on up to 300 processors for hybrid message passing and directive-based parallelizations.
Keep this discovery
Explore connections, maps & timelines
Ierotheou, C., Johnson, S., Leggett, P., Cross, M., Evans, E., Jin, Hao-Qiang, Frumkin, M., Yan, J., Biegel, Bryan. 2001-01-10. The Automatic Parallelisation of Scientific Application Codes Using a Computer Aided Parallelisation Toolkit. https://ntrs.nasa.gov/citations/20010093216
Cite the original work for its findings. Save a collection to share your selection of sources.