Automatic Task-Based Code Generation for High Performance Domain Specific Embedded Language

Providing high level tools for parallel programming while sustaining a high level of performance has been a challenge that techniques like Domain Specific Embedded Languages try to solve. In previous works, we investigated the design of such a DSEL —NT 2 —providing a Matlab  -like syntax for paralle...

Full description

Saved in:
Bibliographic Details
Published in:International journal of parallel programming Vol. 44; no. 3; pp. 449 - 465
Main Authors: Tran Tan, Antoine, Falcou, Joel, Etiemble, Daniel, Kaiser, Hartmut
Format: Journal Article
Language:English
Published: New York Springer US 01.06.2016
Springer Nature B.V
Subjects:
ISSN:0885-7458, 1573-7640
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Providing high level tools for parallel programming while sustaining a high level of performance has been a challenge that techniques like Domain Specific Embedded Languages try to solve. In previous works, we investigated the design of such a DSEL —NT 2 —providing a Matlab  -like syntax for parallel numerical computations inside a C++  library. In this paper, we show how NT 2  has been redesigned for shared memory systems in an extensible and portable way. The new NT 2  design relies on a tiered Parallel Skeleton system built using asynchronous task management and automatic compile-time taskification of user level code. We describe how this system can operate various shared memory runtimes and evaluate the design by using two benchmarks implementing linear algebra algorithms.
Bibliography:SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 14
ObjectType-Article-1
ObjectType-Feature-2
content type line 23
ISSN:0885-7458
1573-7640
DOI:10.1007/s10766-015-0354-9