Although parallel programming languages have existed for decades, (scientific) parallel programming is still dominated by Fortran and C/C++ augmented with parallel programming frameworks, e.g., MPI, OpenMP, OpenCL and CUDA. This paper contains a comparative study of Chapel and Julia, two languages quite different from one another as well as from Fortran and C, in regard to parallel programming on distributed and shared memory computers. The study is carried out using test cases that expose the need for different approaches to parallel programming. Test cases are implemented in Chapel and Julia, and in C augmented with MPI and OpenMP. It is shown that both languages, Chapel and Julia, represent a viable alternative to Fortran and C/C++ augmented with parallel programming frameworks: the programmer’s efficiency is considerably improved while the speed of programs is not significantly affected.
@InProceedings{novosel_et_al:OASIcs.SLATE.2019.12, author = {Novosel, Rok and Slivnik, Bo\v{s}tjan}, title = {{Beyond Classical Parallel Programming Frameworks: Chapel vs Julia}}, booktitle = {8th Symposium on Languages, Applications and Technologies (SLATE 2019)}, pages = {12:1--12:8}, series = {Open Access Series in Informatics (OASIcs)}, ISBN = {978-3-95977-114-6}, ISSN = {2190-6807}, year = {2019}, volume = {74}, editor = {Rodrigues, Ricardo and Janou\v{s}ek, Jan and Ferreira, Lu{\'\i}s and Coheur, Lu{\'\i}sa and Batista, Fernando and Gon\c{c}alo Oliveira, Hugo}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.SLATE.2019.12}, URN = {urn:nbn:de:0030-drops-108796}, doi = {10.4230/OASIcs.SLATE.2019.12}, annote = {Keywords: parallel programming languages, Chapel, Julia} }
Feedback for Dagstuhl Publishing