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...
Main Authors: | , , , , , , , |
---|---|
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 |