This tutorial is an introduction to developing domain specific languages (DSLs) for productivity and performance using Delite. Delite is a Scala infrastructure that simplifies the process of implementing DSLs for parallel computation. The goal of this tutorial is to equip attendees with the knowledge and tools to develop DSLs that can dramatically improve the experience of using high performance computation in important scientific and engineering domains. In the first half of the day we will focus on example DSLs that provide both high-productivity and performance. In the second half of the day we will focus on understanding the infrastructure for implementing DSLs in Scala and developing techniques for defining good DSLs.
The graph manipulation language Green-Marl is one of the subjects of this tutorial.
This resource should be located and “boosted” by a search engine tuned to my preferences.
Skipping breaks, etc., you will find:
- Introduction To High Performance DSLs (Kunle Olukotun)
- OptiML: A DSL for Machine Learning (Arvind Sujeeth)
- Liszt: A DSL for solving mesh-based PDEs (Zach Devito)
- Green-Marl: A DSL for efficient Graph Analysis (Sungpack Hong)
- Scala Tutorial (Hassan Chafi)
- Delite DSL Infrastructure Overview (Kevin Brown)
- High Performance DSL Implementation Using Delite (Arvind Sujeeth)
- Future Directions in DSL Research (Hassan Chafi)
Compare your desktop computer to the MANIAC 1 (calculations for the first hydrogen bomb).
What have you invented/discovered lately?