dc.contributor.author |
Brandejský, Tomáš
|
|
dc.contributor.author |
Hrbek, Václav
|
|
dc.date.accessioned |
2023-07-12T13:23:10Z |
|
dc.date.available |
2023-07-12T13:23:10Z |
|
dc.date.issued |
2022 |
|
dc.identifier.isbn |
978-3-031-09069-1 |
|
dc.identifier.issn |
2367-3370 |
|
dc.identifier.uri |
https://hdl.handle.net/10195/81346 |
|
dc.description.abstract |
In this paper, the problem of programming language selection is presented from the position of large cluster with heterogeneous accelerators programming in the situations when it is need to apply object-oriented programming like in the case of heterogeneous multi-agent simulations or large data modelling using memetic algorithms. This work was inspired by experience with the Chapel language obtained during complicated conversion of hybrid evolutionary algorithm GPAes from a single node OpenMP C++ implementation onto HPC cluster with nodes equipped by both CPU and GPGPU. The paper consists of discussion of many approaches to parallel programming including not only traditional ways such as OpenMP, MPI and Cuda and their combinations, but also modern extensions of C/C++ as OpenACC, Silk and CYCL. Emerging languages as Chapel and Julia are discussed too. The work concludes with an evaluation of the real state of parallel object-oriented programming on heterogeneous node HPC clusters. |
eng |
dc.format |
p. 344-352 |
eng |
dc.language.iso |
eng |
|
dc.publisher |
Springer Nature Switzerland AG |
eng |
dc.relation.ispartof |
Software engineering perspectives in systems: proceedings of 11th Computer Science On-line Conference 2022, Vol. 1 |
eng |
dc.rights |
open access (green) |
eng |
dc.subject |
Object-Oriented Programming |
eng |
dc.subject |
C plus |
eng |
dc.subject |
OpenMP |
eng |
dc.subject |
MPI |
eng |
dc.subject |
SICL |
eng |
dc.subject |
Chapel |
eng |
dc.subject |
Julia |
eng |
dc.subject |
Parallel Programming |
eng |
dc.subject |
HPC cluster |
eng |
dc.subject |
Heterogeneous system |
eng |
dc.subject |
Memetic algorithm |
eng |
dc.subject |
objektově orientované programování |
cze |
dc.subject |
C++ |
cze |
dc.subject |
OpenMP |
cze |
dc.subject |
MPI |
cze |
dc.subject |
Sicl |
cze |
dc.subject |
Chapel |
cze |
dc.subject |
Julia |
cze |
dc.subject |
Paralelní programování |
cze |
dc.subject |
HPC klastr |
cze |
dc.subject |
Heterogenní systém |
cze |
dc.subject |
Memetický algoritmus |
cze |
dc.title |
The Survey of Object-Oriented Software Programming Language from a Heterogeneous Cluster Programming Viewpoint |
eng |
dc.title.alternative |
Přehled jazyků objektově orientovan)ho programování z pohledu programování heterogenních clusterů |
cze |
dc.type |
ConferenceObject |
eng |
dc.description.abstract-translated |
V tomto článku je problém výběru programovacího jazyka prezentován z pozice programování velkého clusteru s heterogenními akcelerátory v situacích, kdy je potřeba aplikovat objektově orientované programování jako v případě heterogenních multiagentních simulací nebo modelování velkých dat pomocí memetické algoritmy. Tato práce byla inspirována zkušenostmi s jazykem Chapel získanými při složité konverzi hybridního evolučního algoritmu GPAes z jednouzlové implementace OpenMP C++ na HPC cluster s uzly vybavenými CPU i GPGPU. Článek obsahuje diskusi o mnoha přístupech k paralelnímu programování, včetně nejen tradičních způsobů jako OpenMP, MPI a Cuda a jejich kombinací, ale také moderních rozšíření C/C++ jako OpenACC, Silk a CYCL. Diskutovány jsou také nově vznikající jazyky jako Chapel a Julia. Práce je zakončena zhodnocením reálného stavu paralelního objektově orientovaného programování na heterogenních uzlových HPC clusterech. |
cze |
dc.event |
11th Computer Science On-line Conference, CSOC 2022 (26.04.2022 - 26.04.2022, ONLINE, CZ) |
eng |
dc.peerreviewed |
yes |
eng |
dc.publicationstatus |
postprint (accepted version) |
eng |
dc.identifier.doi |
10.1007/978-3-031-09070-7_29 |
|
dc.project.ID |
EF17_049/0008394/Spolupráce Univerzity Pardubice a aplikační sféry v aplikačně orientovaném výzkumu lokačních, detekčních a simulačních systémů pro dopravní a přepravní procesy (PosiTrans) |
cze |
dc.identifier.wos |
000893645700029 |
|
dc.identifier.obd |
39888379 |
|