RUS  ENG
Full version
JOURNALS // Meždunarodnyj naučno-issledovatel'skij žurnal // Archive

Meždunar. nauč.-issled. žurn., 2024 Issue 1(139), Pages 1–8 (Mi irj676)

MPI+T++ hybrid programming for T-system with open architecture

V. I. Osipova, G. A. Matveeva, V. A. Roganovab

a Ailamazyan Program Systems Institute of Russian Academy of Sciences
b Lomonosov Moscow State University, Institute of Mechanics

Abstract: Nowadays, there are many high-performance computing systems consisting of nodes with multicore processors and accelerators from different hardware manufacturers. A convenient programming model in such systems is the MPI+X model. Hybrid MPI+X programmes often have higher performance compared to programmes on "pure" MPI. Scientific results obtained while developing such programs are used for creating new versions of MPI (Message Passing Interface) standard. The hybrid method of parallel programming involves using the shared memory model inside a node and MPI message passing model for data exchange between nodes. Examples of hybrid models: MPI+OpenMP, MPI+Posix Threads, MPI+CUDA, MPI+T++ and others. Programming in mixed mode gives a developer an opportunity to achieve higher performance and scalability of an application. In some cases, mixed code can be executed slower than code written in "pure" MPI. This article describes some aspects associated with the hybrid MPI+T++ programming model in the OpenTS environment. T-system (OpenTS) is a system for parallel programming supporting dynamically loaded libraries for communication layer. The OpenTS system implements C++ language for parallel calculations, which is an extension of C++ programming language. C++ syntax differs from C++ syntax by adding several keywords to it. The work presents the results of performance tests of MPI+T++ applications from Mantevo package (CoMD, HPCCG, MiniAero, phdMesh) and examples from LAMMPS package developed in OpenTS environment. The Mantevo package includes several parallel applications in which algorithms for solving some partial differential equations are implemented. An estimation of efficiency of such implementation in comparison with original MPI-versions of applications is presented. The article gives a simple example of a hybrid MPI+T++ application in T++ language.

Keywords: parallel algorithm, C++ programming language, OpenTS, T-system, T-application, hybrid programming models.

Received: 23.11.2023
Revised: 24.01.2024
Accepted: 25.12.2023

DOI: 10.23670/IRJ.2024.139.74



© Steklov Math. Inst. of RAS, 2024