CS343D: Domain-Specific Programming Models and Compilers

Home Course Info Prior Offerings

Course Description

This class will cover the principles and practices of domain-specific programming models and compilers for dense and sparse applications in scientific computing, data science, and machine learning. We will study programming models from the recent literature, categorize them, and discuss their properties. We will also discuss promising directions for their compilation, including the separation of algorithm, schedule, and data representation, polyhedral compilation versus rewrite rules, and sparse iteration theory. Prerequisites: CS143 or equivalent

Basic Logistics

Professor: Fred Kjolstad

CA: Chris Gyurgyik

Quarter: Winter 2025

Lecture Times: Tue, Thu 10:30 AM - 11:50 AM

Lecture Location: Lathrop 299

Fred's office hours: Thu 3-4PM, Gates 486

Chris's office hours: Fri 10-11AM, Gates 4B Common Area

For more detail see the course info page. (Note: this page is currently under construction for Winter 2025, lectures and lecture slides are subject to change.)

Schedule

Date Topic Readings
Lecture 1 Jan 7 (Tue) Introduction
Lecture 2 Jan 9 (Thu) Domain-Specific Compilers
Lecture 3 Jan 14 (Tue) Building DSLs
Lecture 4 Jan 16 (Thu) Collection-Oriented Languages
Lecture 5 Jan 21 (Tue) Dense Programming System
Lecture 6 Jan 23 (Thu) Sparse Programming Systems
Lecture 7 Jan 28 (Tue) Sparse Iteration Model I
Lecture 8 Jan 30 (Thu) Sparse Iteration Model II
Lecture 9 Feb 4 (Tue) Project Pitch
Lecture 10 Feb 6 (Thu) Fast Compilers
Lecture 11 Feb 11 (Tue) Project Discussion I
Lecture 12 Feb 13 (Thu) Project Discussion II
Lecture 13 Feb 18 (Tue) TBD
Lecture 14 Feb 20 (Thu) TBD
Lecture 15 Feb 25 (Tue) TBD
Lecture 16 Feb 27 (Thu) TBD
Lecture 17 Mar 4 (Tue) TBD
Lecture 18 Mar 6 (Thu) (Guest Speaker) Yuka Ikarashi: Exocompilation
Lecture 19 Mar 11 (Tue) Project demo
Lecture 20 Mar 13 (Thu) Project demo