High-Performance Domain-Specific Languages using Delite

Tutorial Objectives:
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.

Kunle Olukotun (Stanford University):
Kunle Olukotun is a Professor of Electrical Engineering and Computer Science at Stanford University and he has been on the faculty since 1991. Olukotun is well known for leading the Stanford Hydra research project which developed one of the first chip multiprocessors with support for thread-level speculation (TLS). Olukotun founded Afara Websystems to develop high-throughput, low power server systems with chip multiprocessor technology. Afara was acquired by Sun Microsystems; the Afara microprocessor technology, called Niagara, is at the center of Sun's throughput computing initiative. Niagara based systems have become one of Sun's fastest ramping products ever. Olukotun is actively involved in research in computer architecture, parallel programming environments and scalable parallel systems. Olukotun currently co-leads the Transactional Coherence and Consistency project whose goal is to make parallel programming accessible to average programmers. Olukotun also directs the Stanford Pervasive Parallelism Lab (PPL) which seeks to proliferate the use of parallelism in all application areas. Olukotun is an ACM Fellow (2006) for contributions to multiprocessors on a chip and multi threaded processor design. He has authored many papers on CMP design and parallel software and recently completed a book on CMP architecture. Olukotun received his Ph.D. in Computer Engineering from The University of Michigan.

Hassan Chafi (Stanford University, Oracle Labs):
Hassan Chafi is Research Manager at Oracle Labs where he currently leads Project Q. His research investigates domain-specific language infrastructures that simplify development of performance oriented DSLs. Prior to that, Hassan worked in the area of hardware transactional memory as part of the Transactional Coherence and Consistency (TCC) project at Stanford where he developed a scalable extension to the original TCC protocol. Hassan is in the final stages of his PhD candidacy at Stanford University, he is advised by Kunle Olukotun.
email: hassan.chafi@oracle.com

HyoukJoong Lee (Stanford University): 

HyoukJoong Lee is a PhD candidate in electrical engineering at Stanford University. His research interests include parallel computer architecture and general-purpose GPU computing with their programming models. He has an MS in electrical engineering from Stanford University.

Arvind Sujeeth (Stanford University):
Arvind Sujeeth is a 4th year Ph.D. candidate working with Professor Kunle Olukotun in the Computer Systems Laboratory (CSL) and Pervasive Parallelism Laboratory (PPL). His research interests include leveraging domain-specific languages as a highly productive, high performance parallel programming model. One major goal of his research effort is to create practical open-source software that can tackle real world problems more efficiently than existing solutions.

Zach Devito (Stanford University):

Zach DeVito is a PhD candidate in computer science at Stanford University. His research investigates languages for high-performance scientific computing and data analysis that can run on a variety of modern hardware, including Liszt -- a language for solving partial differential equations on unstructured meshes.

Sungpack Hong (Stanford University, Oracle Labs):
Sungpack Hong is a PhD candidate in electrical engineering at Stanford University.  His current research interest is to design efficient systems for analyzing large graph data and to provide an easy way for the non-experts to use such systems.  Before he came to Stanford, he has had significant R&D experiences in design and optimization of embedded systems. Sungpack is also a Principal Member of the Technical Staff at Oracle Labs. 

Kevin Brown (Stanford University): 
Kevin Brown is a PhD candidate in electrical engineering at Stanford University. His research interests include parallel programming models and heterogeneous compiler and runtime systems for domain-specific languages. 


Software Links:

Our publications are collected on the ppl website.

A Heterogeneous Parallel Framework for Domain-Specific Languages
Kevin J. Brown, Arvind K. Sujeeth, HyoukJoong Lee, Tiark Rompf, Hassan Chafi, Martin Odersky, Kunle Olukotun
PACT '11: 20th International Conference on Parallel Architectures and Compilation Techniques, October 2011.
Paper PDF | Slides

OptiML: An Implicitly Parallel Domain-Specific Language for Machine Learning
Arvind K. Sujeeth, HyoukJoong Lee, Kevin J. Brown, Tiark Rompf, Hassan Chafi, Michael Wu, Anand R. Atreya, Martin Odersky, Kunle Olukotun
ICML '11: Proceedings of the 28th Intl. Conference on Machine Learning, June 2011.
Paper PDF | Slides

Green-Marl: A DSL for Easy and Efficient Graph Analysis
Sungpack Hong, Hassan Chafi, Eric Sedlar, and Kunle Olukotun
ASPLOS '12: 17th International Conference on Architectural Support for Programming Languages and Operating Systems, March 2012.
Paper PDF

Liszt: A Domain Specific Language for Building Portable Mesh-based PDE Solvers
Zachary DeVito, Niels Joubert, Francisco Palacios, Stephen Oakley, Montserrat Medina, Mike Barrientos, Erich Elsen, Frank Ham, Alex Aiken, Karthik Duraisamy, Eric Darve, Juan Alonso, Pat Hanrahan
SC '11: Proceedings of the 2011 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis, November 2011.
Paper PDF | Slides

Sponsored By: