Parallelization of some scientific codes using profiling tools and OpenMP
Research report
Permanent lenke
http://hdl.handle.net/11250/2389207Utgivelsesdato
2009Metadata
Vis full innførselSamlinger
- Publikasjoner fra CRIStin - SINTEF AS [5638]
- SINTEF Digital [2381]
Originalversjon
SINTEF Rapport A11362, 53 p. SINTEF, 2009Sammendrag
The purpose of this report is to exchange our experience with parallelizing existing scientificcodes by utilizing profiling tools and the OpenMP application programming interface (API) formulti-platform shared-memory parallel programming in C/C++ and Fortran.Profiling is a very good tool to get an indication on which parts of the program to concentrateon in order to parallelize scientific codes. In general there will be necessary to get moredetailed information regarding the relative importance of different sub-blocks inside an interestingsubroutine. This information might be obtained by the use of manually inserted timersinside the subroutines. In order to get more reliable results cpu-timers should be used insteadof wall-clock-timers.The main goal was to parallelize the Simra CFD-code as much as possible. Some initial workon less complex and smaller programs did undoubtedly lead to better results for the Simracode. At the moment about 65% of the program has been parallelized. When using 16 coreson the Njord supercomputer, the global speedup resulting from this work is between 2.2 and2.3 depending on the problem size.
Oppdragsgiver SINTEF ICT Applied Mathematics
Beskrivelse
-