| Instructor: | J. (Ram) Ramanujam, 2020 Louisiana Digital Media Center (LDMC), or Patrick Taylor Hall, 578-7877 (jxr at ece.lsu.edu) |
| Time, Place: | Mondays & Wednesdays 3:30pm-5:00pm in room 1236 Patrick Talyor |
| Office Hours: | To Be Announced |
| Text: | None; Papers and class notes |
| Prerequisites:   | Graduate standing |
| Goals: | To familiarize the student with techniques used in polyhedral model-based |
| optimizing compilers for a variety of architectures: CPUs, accelerators, etc.; AI-based Optimization and Optimizations for AI. |
7700 Program Optimization (Using Polyhedral Models) and AI(3) Prerequisites: Graduate standing.
Polyhedral models, dependence analysis, schedules code generation, CPUs, accelerators: GPUs, FPGAs, etc.
The course deals with the study of polyhedral compiler optimizations aimed at improving performance of science and engineering applications on CPUs, accelerators (GPUs, FPGAs) and heterogeneous systems consisting of CPUs and accelerators. Basic ideas of high-performance and parallel computing will be covered first. We will then discuss polyhedral models (part 2), polyhedral compiler optimization strategies, application performance optimization and the use of compiler tools such as PLUTO for automatic code generation for a variety of target machines. Program transformations that enhance data locality and optimize memory usage will get a lot of coverage. In addition, compilation starting from high-level specifications or for domain-specific languages will be discussed. The course will involve significant implementation projects.