Труды Института системного программирования РАН (Oct 2018)

Analysis and development tools for efficient programs on parallel architectures

  • Alexander Monakov,
  • Eugene Velesevich,
  • Vladimir Platonov,
  • Arutyun Avetisyan

DOI
https://doi.org/10.15514/ISPRAS-2014-26(1)-14
Journal volume & issue
Vol. 26, no. 1
pp. 357 – 374

Abstract

Read online

The article proposes methods for supporting development of efficient programs for modern parallel architectures, including hybrid systems. Specialized profiling methods designed for programmers tasked with parallelizing existing code are proposed. The problem of automatic parallel code generation for hybrid architectures is discussed. In cases where achieving high efficiency on hybrid systems requires significant rework of data structures or algorithms, one can employ auto-tuning to specialize for specific input data and hardware at run time. This is demonstrated on the problem of optimizing sparse matrix-vector multiplication for GPUs and its use for accelerating linear system solving in OpenFOAM CFD package.

Keywords