Parallel Software Products     Please select sample OpenMP parallelisations of Fortran code performed by ParaWise from the menu below:



Sun Fire E25K

S|EA runtimes


SGi Origin 2000

SEA
                  speedups


 

SEA

The SEA code (F77) is used to model ocean circulation by solving the primitive equations of motion. The serial code was provided by D. Stevens from the University of East Anglia (UK).

Code information: 7300 lines of source and 26 subroutines

Total Parallelization Time using ParaWise/CAPO : Approximately a couple of hours.

Approximate Time if Parallelized by hand : At least a month.

Results

Sun Fire E25K

The first graph on the left shows the performance of a ParaWise/CAPO generated OpenMP code on a Sun Fire E25K machine using UltraSparc IV 1.05 GHz processors (RWTH Aachen University). Clearly, the code exhibits good speedup and scalability to at least 64 processors.

     

SGI Origin 2000

The following results show the performance of a ParaWise/CAPO generated OpenMP code on an SGI Origin 2000 using static and dynamic scheduling compared against SGIís auto-parallelizing compiler option. The dynamic OpenMP schedule is used in some loops were the computational load in each iteration differs (in this case, largely due to differing ocean depths) and give a significant improvement in parallel performance, enabling a runtime over 45 times faster than the original serial code on 64 processors.


Summary of OpenMP directives inserted by CAPO

Total number of PARALLEL Regions : 10

Total number of OMP DO Loops defined : 25

PARALLEL regions with a single OMP DO loop : 4

REDUCTION Loops : 3

ATOMIC/CRITICAL Sections : 1

Regions containing FIRSTPRIVATE variables : 2