C++ EDSL for parallel code generation

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Code generation is ubiquitous for modern highperformance computing (HPC) to provide efficient but highly parametrizable program development. Many times functional dependencies should be made available for the user to manipulate, and such arbitrary functions should be efficiently parallelized over multiple levels. We propose an embedded domain specific language inside C++ for manipulating abstract syntax trees (ASTs) that can represent arbitrary computation, and that such language can be extended with constructs for parallelism and functional programming.

Original languageEnglish
Title of host publicationProceedings - 2015 8th Romania Tier 2 Federation Grid, Cloud and High Performance Computing in Science, ROLCG 2015
PublisherInstitute of Electrical and Electronics Engineers Inc.
ISBN (Print)9786067370409
DOIs
Publication statusPublished - Dec 28 2015
Event8th Romania Tier 2 Federation Grid, Cloud and High Performance Computing in Science, ROLCG 2015 - Cluj-Napoca
Duration: Oct 28 2015Oct 30 2015

Other

Other8th Romania Tier 2 Federation Grid, Cloud and High Performance Computing in Science, ROLCG 2015
CityCluj-Napoca
Period10/28/1510/30/15

Fingerprint

Functional programming
Code generation

Keywords

  • C++
  • dynamic code generation
  • EDSLs
  • functional programming
  • GPUs

ASJC Scopus subject areas

  • Computer Science Applications
  • Computer Networks and Communications

Cite this

Berényi, D. (2015). C++ EDSL for parallel code generation. In Proceedings - 2015 8th Romania Tier 2 Federation Grid, Cloud and High Performance Computing in Science, ROLCG 2015 [7367231] Institute of Electrical and Electronics Engineers Inc.. https://doi.org/10.1109/ROLCG.2015.7367231

C++ EDSL for parallel code generation. / Berényi, D.

Proceedings - 2015 8th Romania Tier 2 Federation Grid, Cloud and High Performance Computing in Science, ROLCG 2015. Institute of Electrical and Electronics Engineers Inc., 2015. 7367231.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Berényi, D 2015, C++ EDSL for parallel code generation. in Proceedings - 2015 8th Romania Tier 2 Federation Grid, Cloud and High Performance Computing in Science, ROLCG 2015., 7367231, Institute of Electrical and Electronics Engineers Inc., 8th Romania Tier 2 Federation Grid, Cloud and High Performance Computing in Science, ROLCG 2015, Cluj-Napoca, 10/28/15. https://doi.org/10.1109/ROLCG.2015.7367231
Berényi D. C++ EDSL for parallel code generation. In Proceedings - 2015 8th Romania Tier 2 Federation Grid, Cloud and High Performance Computing in Science, ROLCG 2015. Institute of Electrical and Electronics Engineers Inc. 2015. 7367231 https://doi.org/10.1109/ROLCG.2015.7367231
Berényi, D. / C++ EDSL for parallel code generation. Proceedings - 2015 8th Romania Tier 2 Federation Grid, Cloud and High Performance Computing in Science, ROLCG 2015. Institute of Electrical and Electronics Engineers Inc., 2015.
@inproceedings{b66d3928fda348fdb1583a6f1732548f,
title = "C++ EDSL for parallel code generation",
abstract = "Code generation is ubiquitous for modern highperformance computing (HPC) to provide efficient but highly parametrizable program development. Many times functional dependencies should be made available for the user to manipulate, and such arbitrary functions should be efficiently parallelized over multiple levels. We propose an embedded domain specific language inside C++ for manipulating abstract syntax trees (ASTs) that can represent arbitrary computation, and that such language can be extended with constructs for parallelism and functional programming.",
keywords = "C++, dynamic code generation, EDSLs, functional programming, GPUs",
author = "D. Ber{\'e}nyi",
year = "2015",
month = "12",
day = "28",
doi = "10.1109/ROLCG.2015.7367231",
language = "English",
isbn = "9786067370409",
booktitle = "Proceedings - 2015 8th Romania Tier 2 Federation Grid, Cloud and High Performance Computing in Science, ROLCG 2015",
publisher = "Institute of Electrical and Electronics Engineers Inc.",

}

TY - GEN

T1 - C++ EDSL for parallel code generation

AU - Berényi, D.

PY - 2015/12/28

Y1 - 2015/12/28

N2 - Code generation is ubiquitous for modern highperformance computing (HPC) to provide efficient but highly parametrizable program development. Many times functional dependencies should be made available for the user to manipulate, and such arbitrary functions should be efficiently parallelized over multiple levels. We propose an embedded domain specific language inside C++ for manipulating abstract syntax trees (ASTs) that can represent arbitrary computation, and that such language can be extended with constructs for parallelism and functional programming.

AB - Code generation is ubiquitous for modern highperformance computing (HPC) to provide efficient but highly parametrizable program development. Many times functional dependencies should be made available for the user to manipulate, and such arbitrary functions should be efficiently parallelized over multiple levels. We propose an embedded domain specific language inside C++ for manipulating abstract syntax trees (ASTs) that can represent arbitrary computation, and that such language can be extended with constructs for parallelism and functional programming.

KW - C++

KW - dynamic code generation

KW - EDSLs

KW - functional programming

KW - GPUs

UR - http://www.scopus.com/inward/record.url?scp=84964045821&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84964045821&partnerID=8YFLogxK

U2 - 10.1109/ROLCG.2015.7367231

DO - 10.1109/ROLCG.2015.7367231

M3 - Conference contribution

SN - 9786067370409

BT - Proceedings - 2015 8th Romania Tier 2 Federation Grid, Cloud and High Performance Computing in Science, ROLCG 2015

PB - Institute of Electrical and Electronics Engineers Inc.

ER -