Methods of dynamic tuning of DVMH programs on clusters with accelerators

Authors

V.A. Bakhtin, A.S. Kolganov, V.A. Krukov, N.V. Podderugina, M.N. Pritula

Annotation

DVM system is intended for development of parallel programs of scientific-technical calculations in C-DVMH and Fortran-DVMH languages. These languages use single model of parallel programming (DVMH model) and they are extensions of standard C and  FORTRAN languages by the specifications of parallelism issued in the form of directives to the compiler. DVMH model allows to create effective parallel programs for heterogeneous computing clusters with accelerators. Using DVMH model the programmer doesn't use explicit copy operations of  the data located in the memory of central processor (CPU) or accelerators. For program fragments (regions) which can be executed on accelerators, he specifies input and output data, and also those data which are updated or used out of regions. It allows to select dynamically the devices on which the region will be executed, to distribute job between devices according to their productivity, to execute repeatedly regions for selection of optimum configuration. The influence of the listed methods on execution efficiency of some tests (from NAS NPB benchmarks) and real applications is shown in the article.

Key words

High level programming languages, accelerators, coprocessors, GPU, Xeon Phi, NAS Parallel Benchmarks.

Language

English

Reference

V.A. Bakhtin, A.S. Kolganov, V.A. Krukov, N.V. Podderugina, M.N. Pritula. Methods of dynamic tuning of DVMH programs on clusters with accelerators // Russian Supercomputing Days: Proccedings of International conference (28-29 september 2015, Moscow), Moscow: Moscow University Press, 2015, P. 257-268