Expression Acceleration: Seamless Parallelization of Typed High-Level Languages

Fuente: arXiv
Enregistré dans:
Détails bibliographiques
Auteurs principaux: Hummelgren, Lars, Wikman, John, Eriksson, Oscar, Haller, Philipp, Broman, David
Format: Preprint
Publié: 2022
Sujets:
Accès en ligne:
Tags: Ajouter un tag
Pas de tags, Soyez le premier à ajouter un tag!
_version_ 1866917714153439232
author Hummelgren, Lars
Wikman, John
Eriksson, Oscar
Haller, Philipp
Broman, David
author_facet Hummelgren, Lars
Wikman, John
Eriksson, Oscar
Haller, Philipp
Broman, David
contents Efficient parallelization of algorithms on general-purpose GPUs is essential in many areas today. However, it is a non-trivial task for software engineers to utilize GPUs to improve the performance of high-level programs in general. Although many domain-specific approaches are available for GPU acceleration, it is difficult to accelerate existing high-level programs without rewriting parts of the programs using low-level GPU code. We present a compiler implementation using an alternative approach called expression acceleration. This approach marks expressions for acceleration, and the compiler automatically infers which dependent code needs to be accelerated. We design and implement a compiler supporting expression acceleration for a statically typed functional language and evaluate its applicability and performance.
format Preprint
id arxiv_https___arxiv_org_abs_2211_00621
institution arXiv
publishDate 2022
record_format arxiv
spellingShingle Expression Acceleration: Seamless Parallelization of Typed High-Level Languages
Hummelgren, Lars
Wikman, John
Eriksson, Oscar
Haller, Philipp
Broman, David
Programming Languages
Efficient parallelization of algorithms on general-purpose GPUs is essential in many areas today. However, it is a non-trivial task for software engineers to utilize GPUs to improve the performance of high-level programs in general. Although many domain-specific approaches are available for GPU acceleration, it is difficult to accelerate existing high-level programs without rewriting parts of the programs using low-level GPU code. We present a compiler implementation using an alternative approach called expression acceleration. This approach marks expressions for acceleration, and the compiler automatically infers which dependent code needs to be accelerated. We design and implement a compiler supporting expression acceleration for a statically typed functional language and evaluate its applicability and performance.
title Expression Acceleration: Seamless Parallelization of Typed High-Level Languages
topic Programming Languages
url https://arxiv.org/abs/2211.00621