Execution performance of NAS NBP 2.3

Results obtained on March, 2002.

Performance of program execution always was very important factor, mainly determining the success and spreading of programming languages intended for development of computing programs.

For DVM-programs the performance of program execution is principal question as the programs at startup should be customized dynamically (without recompilation) on a number of and performance of the processors, selected for their execution. To estimate the performance of DVM-programs appropriate versions of NAS tests (NPB 2.3) were developed.

These tests well reflect a nature of computing tasks of various classes, except for the tasks with irregular grids. Table 1 shows the brief characteristics of tests and their sizes in lines for three versions of each program – the sequential version, the MPI-version and the DVM-version are presented below.

Table 1. The brief characteristics of NAS NPB 2.3
Table 1. The brief characteristics of NAS NPB 2.3
TestTest characteristicsSEQMPIDVMMPI/SEQDVM/SEQ
BT3D Navier-Stokes Alternating Direction Implicit (ADI) approximate factorization3929574439911.461.02
CGEstimation of the largest eigenvalue of a symmetric positive definite sparse matrix1108179311181.621.01
EPGeneration of pairs of Gaussian random deviates6416706491.041.01
FTFFT-based 3D spectral method1500235216051.571.07
ISParallel sorting925121810671.321.17
LUNavier-Stokes 3D Symmetric Successive Over-Relaxation (SSOR) method4189549742691.311.02
MG3D scalar Poisson equation Multigrid method1898285721311.501.12
SPNavier-Stokes 3D Beam-Warning approximate factorization361502036301.491.08
S1755125151184601.431.05
SEQserial code
MPIparallel code in Fortran 77 or C (IS) + MPI
DVMparallel code in FORTRAN-DVM or C-DVM (IS)
The ratio of execution time of MPI-version to execution time of the DVM-version for each test on MVS-1000m
MVS-1000m-classA
Fig. 1. The ratio of execution time of MPI-version to execution time of the DVM-version for each test (class A) on MVS-1000m
MVS-1000m-classC
Fig. 2. The ratio of execution time of MPI-version to execution time of the DVM-version for each test (class C) on MVS-1000m

Note. In the table there are no results of comparison for tests IS and MG on 512 processors as one could not run the MPI-version of these tests.

Certainly, comparison on NPB 2.3 test is no quite lawful – they are written at very high professional level and are the object of steadfast attention of many experts. At development of real parallel programs, as a rule, reaching of high performance requires multiple changes of the program for search of the best scheme of its parallelization. Success of such search is determined by a simplicity of modification of the program. Moreover it is difficult for applied programmer to realize many frequently used methods of parallezation as effectively as they are realized by programming systems. Therefore on real programs the MPI-approach very frequently is lost on efficiency to the DVM-approach.