The Semi-Automatic Parallelisation of Scientific Application Codes Using a Computer Aided Parallelisation Toolkit

The shared-memory programming model can be an effective way to achieve parallelism on shared memory parallel computers. Historically however, the lack of a programming standard using directives and the limited scalability have affected its take-up. Recent advances in hardware and software technologi...

Full description

Bibliographic Details
Main Authors: C.S. Ierotheou, S.P. Johnson, P.F. Leggett, M. Cross, E.W. Evans, H. Jin, M. Frumkin, J. Yan
Format: Article
Language:English
Published: Hindawi Limited 2001-01-01
Series:Scientific Programming
Online Access:http://dx.doi.org/10.1155/2001/327048
id doaj-81dd927dc42248d29ad395696fcb5a42
record_format Article
spelling doaj-81dd927dc42248d29ad395696fcb5a422021-07-02T02:40:12ZengHindawi LimitedScientific Programming1058-92441875-919X2001-01-0192-316317310.1155/2001/327048The Semi-Automatic Parallelisation of Scientific Application Codes Using a Computer Aided Parallelisation ToolkitC.S. Ierotheou0S.P. Johnson1P.F. Leggett2M. Cross3E.W. Evans4H. Jin5M. Frumkin6J. Yan7Parallel Processing Research Group, University of Greenwich, London SE10 9LS, UKParallel Processing Research Group, University of Greenwich, London SE10 9LS, UKParallel Processing Research Group, University of Greenwich, London SE10 9LS, UKParallel Processing Research Group, University of Greenwich, London SE10 9LS, UKParallel Processing Research Group, University of Greenwich, London SE10 9LS, UKNAS Systems Division, NASA Ames Research Center, Moffett Field, CA, USANAS Systems Division, NASA Ames Research Center, Moffett Field, CA, USANAS Systems Division, NASA Ames Research Center, Moffett Field, CA, USAThe shared-memory programming model can be an effective way to achieve parallelism on shared memory parallel computers. Historically however, the lack of a programming standard using directives and the limited scalability have affected its take-up. Recent advances in hardware and software technologies have resulted in improvements to both the performance of parallel programs with compiler directives and the issue of portability with the introduction of OpenMP. In this study, the Computer Aided Parallelisation Toolkit has been extended to automatically generate OpenMP-based parallel programs with nominal user assistance. We categorize the different loop types and show how efficient directives can be placed using the toolkit's in-depth interprocedural analysis. Examples are taken from the NAS parallel benchmarks and a number of real-world application codes. This demonstrates the great potential of using the toolkit to quickly parallelise serial programs as well as the good performance achievable on up to 300 processors for hybrid message passing-directive parallelisations.http://dx.doi.org/10.1155/2001/327048
collection DOAJ
language English
format Article
sources DOAJ
author C.S. Ierotheou
S.P. Johnson
P.F. Leggett
M. Cross
E.W. Evans
H. Jin
M. Frumkin
J. Yan
spellingShingle C.S. Ierotheou
S.P. Johnson
P.F. Leggett
M. Cross
E.W. Evans
H. Jin
M. Frumkin
J. Yan
The Semi-Automatic Parallelisation of Scientific Application Codes Using a Computer Aided Parallelisation Toolkit
Scientific Programming
author_facet C.S. Ierotheou
S.P. Johnson
P.F. Leggett
M. Cross
E.W. Evans
H. Jin
M. Frumkin
J. Yan
author_sort C.S. Ierotheou
title The Semi-Automatic Parallelisation of Scientific Application Codes Using a Computer Aided Parallelisation Toolkit
title_short The Semi-Automatic Parallelisation of Scientific Application Codes Using a Computer Aided Parallelisation Toolkit
title_full The Semi-Automatic Parallelisation of Scientific Application Codes Using a Computer Aided Parallelisation Toolkit
title_fullStr The Semi-Automatic Parallelisation of Scientific Application Codes Using a Computer Aided Parallelisation Toolkit
title_full_unstemmed The Semi-Automatic Parallelisation of Scientific Application Codes Using a Computer Aided Parallelisation Toolkit
title_sort semi-automatic parallelisation of scientific application codes using a computer aided parallelisation toolkit
publisher Hindawi Limited
series Scientific Programming
issn 1058-9244
1875-919X
publishDate 2001-01-01
description The shared-memory programming model can be an effective way to achieve parallelism on shared memory parallel computers. Historically however, the lack of a programming standard using directives and the limited scalability have affected its take-up. Recent advances in hardware and software technologies have resulted in improvements to both the performance of parallel programs with compiler directives and the issue of portability with the introduction of OpenMP. In this study, the Computer Aided Parallelisation Toolkit has been extended to automatically generate OpenMP-based parallel programs with nominal user assistance. We categorize the different loop types and show how efficient directives can be placed using the toolkit's in-depth interprocedural analysis. Examples are taken from the NAS parallel benchmarks and a number of real-world application codes. This demonstrates the great potential of using the toolkit to quickly parallelise serial programs as well as the good performance achievable on up to 300 processors for hybrid message passing-directive parallelisations.
url http://dx.doi.org/10.1155/2001/327048
work_keys_str_mv AT csierotheou thesemiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT spjohnson thesemiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT pfleggett thesemiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT mcross thesemiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT ewevans thesemiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT hjin thesemiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT mfrumkin thesemiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT jyan thesemiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT csierotheou semiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT spjohnson semiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT pfleggett semiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT mcross semiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT ewevans semiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT hjin semiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT mfrumkin semiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
AT jyan semiautomaticparallelisationofscientificapplicationcodesusingacomputeraidedparallelisationtoolkit
_version_ 1721342977375207424