@inproceedings{12474200b44d43588056dd70563f4087,
title = "Accelerating Nested Data Parallelism: Preserving Regularity",
abstract = "Irregular nested data-parallelism is a powerful programming model which enables the expression of a large class of parallel algorithms. However, it is notoriously difficult to compile such programs to efficient code for modern parallel architectures. Regular data-parallelism, on the other hand, is much easier to compile to efficient code, but too restricted to express some problems conveniently or in a manner to exploit the full parallelism. We extend the regular data-parallel programming model to allow for the parallel execution of array-level conditionals and iterations over irregular nested structures, and present two novel static analyses to optimise the code generated for these programs which reduces the costs of this more powerful irregular model. We present benchmarks to support our claim that these extensions are effective as well as feasible, as they enable to exploit the full parallelism of an important class of algorithms, and together with our optimisations lead to an improvement in absolute performance over an implementation limited to exploiting only regular parallelism. ",
keywords = "Arrays, GPGPU, Nested data parallelism, Parallel functional programming",
author = "{van den Haak}, Lars and McDonnel, {Trevor L.} and Keller, {Gabriele K.} and {de Wolff}, {Ivo Gabe}",
year = "2020",
month = aug,
day = "18",
doi = "10.1007/978-3-030-57675-2_27",
language = "English",
isbn = "978-3-030-57674-5",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer",
pages = "426--442",
editor = "Maciej Malawski and Krzysztof Rzadca",
booktitle = "Euro-Par 2020",
}