Modern applications, especially those intended to run at exascale (i.e., on machines, that can perform one quintillion floating point operations a second), are not written from scratch. Instead, they are built by stitching together various carefully-written, hand-tuned libraries. Correctly composing these libraries is difficult, but traditional compilers are unable to effectively analyze and transform across abstraction layers. Domain specific compilers integrate semantic knowledge into compilers, allowing them to transform applications that use particular domain-specific languages, or domain libraries. But they do not help when new domains are developed, or applications span multiple domains.

SLEEC aims to fix these problems.

Goals and Vision

We are building a generic, extensible compiler infrastructure that can incorporate semantic information from domain-specific libraries to enable transformations that leverage domain-specific properties of library methods. Rather than building domain-specific compilers for each domain, our extensible compiler becomes a domain specific compiler for a domain when paired with domain-specific libraries.

The SLEEC vision is based around three key principles:

High level overview of SLEEC infrastructure


SLEEC is a joint project between Purdue University and Sandia National Laboratories. The team members are:

Purdue University

Sandia National Laboratories



About our sponsor

SLEEC is funded by the DoE office of Advanced Scientific Computing Research (ASCR) under contract DE-FC02-12ER26104. Dr. Sonia Sachs is the program manager and Dr. William Harrod is the director of the ASCR Research Division.