Přejít k hlavnímu obsahu

Přihlášení pro studenty

Přihlášení pro zaměstnance

Publikace detail

The Survey of Object-Oriented Software Programming Language from a Heterogeneous Cluster Programming Viewpoint
Rok: 2022
Druh publikace: článek ve sborníku
Název zdroje: Software engineering perspectives in systems : proceedings of 11th Computer Science On-line Conference 2022, Vol. 1
Název nakladatele: Springer Nature Switzerland AG
Místo vydání: Cham
Strana od-do: 344-352
Tituly:
Jazyk Název Abstrakt Klíčová slova
cze Přehled jazyků objektově orientovan)ho programování z pohledu programování heterogenních clusterů 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. Objektově orientované programování; C++; OpenMP; MPI; Sicl; Chapel; Julia; Paralelní programování; HPC klastr; Heterogenní systém; Memetický algoritmus
eng The Survey of Object-Oriented Software Programming Language from a Heterogeneous Cluster Programming Viewpoint 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. Object-Oriented Programming; C plus; OpenMP; MPI; SICL; Chapel; Julia; Parallel Programming; HPC cluster; Heterogeneous system; Memetic algorithm