Support for Parallel and Concurrent Programming in C++
- Autores: V’yukova N.1, Galatenko V.1, Samborskii S.1
-
Afiliações:
- Scientific Research Institute for System Analysis
- Edição: Volume 44, Nº 1 (2018)
- Páginas: 35-42
- Seção: Article
- URL: https://journals.rcsi.science/0361-7688/article/view/176572
- DOI: https://doi.org/10.1134/S0361768818010073
- ID: 176572
Citar
Resumo
C++ was originally designed as a sequential programming language. For development of multithreaded applications, libraries, such as Pthreads, Windows threads, and Boost, are traditionally used. The C++11 standard introduced some basic concepts and means for developing parallel and concurrent programs, but the direct use of these low-level means requires high programming skills and significant efforts. The absence of high-level models of parallelism in C++ is somewhat compensated for by various parallel libraries and directive parallelization tools (such as OpenMP), as well as by language extensions supported by some compilers (Intel CilkPlus). Nevertheless, we still require more advanced means to express parallelism in programs at the level of language standard and language library. In this survey, we consider the means for parallel and concurrent programming that are included into the C++17 standard, as well as some capabilities that are to be expected in the future standards.
Sobre autores
N. V’yukova
Scientific Research Institute for System Analysis
Autor responsável pela correspondência
Email: niva@niisi.ras.ru
Rússia, Nakhimovskii pr. 36/1, Moscow, 117218
V. Galatenko
Scientific Research Institute for System Analysis
Email: niva@niisi.ras.ru
Rússia, Nakhimovskii pr. 36/1, Moscow, 117218
S. Samborskii
Scientific Research Institute for System Analysis
Email: niva@niisi.ras.ru
Rússia, Nakhimovskii pr. 36/1, Moscow, 117218