Building-Blocks for Performance Oriented DSLs
Domain-specific languages raise the level of abstraction in software development. While it is evident that programmers can more easily reason about very high-level programs, the same holds for compilers only if the compiler has an accurate model of the application domain and the underlying target pl...
Main Authors: | , , , , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Open Publishing Association
2011-09-01
|
Series: | Electronic Proceedings in Theoretical Computer Science |
Online Access: | http://arxiv.org/pdf/1109.0778v1 |
id |
doaj-d3d920cfecc04111a6bf38c1d0d6f628 |
---|---|
record_format |
Article |
spelling |
doaj-d3d920cfecc04111a6bf38c1d0d6f6282020-11-24T23:46:16ZengOpen Publishing AssociationElectronic Proceedings in Theoretical Computer Science2075-21802011-09-0166Proc. DSL 20119311710.4204/EPTCS.66.5Building-Blocks for Performance Oriented DSLsTiark RompfArvind K. SujeethHyoukJoong LeeKevin J. BrownHassan ChafiMartin OderskyKunle OlukotunDomain-specific languages raise the level of abstraction in software development. While it is evident that programmers can more easily reason about very high-level programs, the same holds for compilers only if the compiler has an accurate model of the application domain and the underlying target platform. Since mapping high-level, general-purpose languages to modern, heterogeneous hardware is becoming increasingly difficult, DSLs are an attractive way to capitalize on improved hardware performance, precisely by making the compiler reason on a higher level. Implementing efficient DSL compilers is a daunting task however, and support for building performance-oriented DSLs is urgently needed. To this end, we present the Delite Framework, an extensible toolkit that drastically simplifies building embedded DSLs and compiling DSL programs for execution on heterogeneous hardware. We discuss several building blocks in some detail and present experimental results for the OptiML machine-learning DSL implemented on top of Delite.http://arxiv.org/pdf/1109.0778v1 |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Tiark Rompf Arvind K. Sujeeth HyoukJoong Lee Kevin J. Brown Hassan Chafi Martin Odersky Kunle Olukotun |
spellingShingle |
Tiark Rompf Arvind K. Sujeeth HyoukJoong Lee Kevin J. Brown Hassan Chafi Martin Odersky Kunle Olukotun Building-Blocks for Performance Oriented DSLs Electronic Proceedings in Theoretical Computer Science |
author_facet |
Tiark Rompf Arvind K. Sujeeth HyoukJoong Lee Kevin J. Brown Hassan Chafi Martin Odersky Kunle Olukotun |
author_sort |
Tiark Rompf |
title |
Building-Blocks for Performance Oriented DSLs |
title_short |
Building-Blocks for Performance Oriented DSLs |
title_full |
Building-Blocks for Performance Oriented DSLs |
title_fullStr |
Building-Blocks for Performance Oriented DSLs |
title_full_unstemmed |
Building-Blocks for Performance Oriented DSLs |
title_sort |
building-blocks for performance oriented dsls |
publisher |
Open Publishing Association |
series |
Electronic Proceedings in Theoretical Computer Science |
issn |
2075-2180 |
publishDate |
2011-09-01 |
description |
Domain-specific languages raise the level of abstraction in software development. While it is evident that programmers can more easily reason about very high-level programs, the same holds for compilers only if the compiler has an accurate model of the application domain and the underlying target platform. Since mapping high-level, general-purpose languages to modern, heterogeneous hardware is becoming increasingly difficult, DSLs are an attractive way to capitalize on improved hardware performance, precisely by making the compiler reason on a higher level. Implementing efficient DSL compilers is a daunting task however, and support for building performance-oriented DSLs is urgently needed. To this end, we present the Delite Framework, an extensible toolkit that drastically simplifies building embedded DSLs and compiling DSL programs for execution on heterogeneous hardware. We discuss several building blocks in some detail and present experimental results for the OptiML machine-learning DSL implemented on top of Delite. |
url |
http://arxiv.org/pdf/1109.0778v1 |
work_keys_str_mv |
AT tiarkrompf buildingblocksforperformanceorienteddsls AT arvindksujeeth buildingblocksforperformanceorienteddsls AT hyoukjoonglee buildingblocksforperformanceorienteddsls AT kevinjbrown buildingblocksforperformanceorienteddsls AT hassanchafi buildingblocksforperformanceorienteddsls AT martinodersky buildingblocksforperformanceorienteddsls AT kunleolukotun buildingblocksforperformanceorienteddsls |
_version_ |
1725494008929583104 |