Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Instructor:

Prof. K.V. Palem, DH 3096; Prof. Vivek Sarkar, DH 3131 (office hours by appointment)

Assistant:

Sherry Nassar, sherry.nassar@rice.edu, DH 3140, 713-348-2031

Lectures:

Keck Hall (KH) 107MLC 103, TTh 10:50am-12:05pm

Introduction

...

NOTE: links for future lectures will be updated during the semester as the course progresses

  1. Lecture 1 (08/27/2013, Profs. Palem & Sarkar): Compiler Challenges for High Performance Architectures (Chapter 1) 
  2. Lecture 2 (08/29/2013, Prof. Palem): Dependence: Theory and Practice (Chapter 2) 
  3. Lecture 3 (09/03/2013, Prof. Palem): Dependence: Theory and Practice (Chapter 2, contd)
  4. Lecture 4 (09/05/2013, Prof. Palem): Dependence Testing (Chapter 3) 
  5. Lecture 5 (09/10/2013, Prof. Sarkar): Dependence Testing (Chapter 3, contd) 
  6. Lecture 6 (09/12/2013, Prof. Sarkar): Dependence Testing & Preliminary Transformations (Chapter 3, contd, Chapter 4)
  7. Lecture 7 (09/17/2013, self self study): Prepare project proposal
  8. Lecture 8 (09/19/2013, self self study): Prepare project proposal
  9. Lecture 9 (09/24/2013, Prof. Sarkar): Preliminary Transformations & Enhancing Fine-Grained Parallelis (Chapter 4, contd, Chapter 5)
  10. Lecture 10 (09/26/2013, Prof. Sarkar): Vectorization Algorithm & Enhancing Fine-Grained Parallelism (Chapter 2, contd, Chapter 5, contd)
  11. Lecture 11 (10/01/2013, Prof. Sarkar):  Enhancing Fine-Grained Parallelism (Chapter 5, contd)
  12. Lecture 12 (10/03/2013, Prof. Sarkar):  Enhancing Fine-Grained Parallelism, Coarse-Grained Parallelism (Chapter 5, contd, intro to Chapter 6)
  13. Lecture 13 (10/08/2013):  Midterm Review
  14. Lecture 14 (10/10/2013, Prof. Sarkar): Unimodular Transformations
  15. Lecture 15 (10/17/2013, Prof. Sarkar): Polyhedral  Polyhedral Compilation Framework (Guest lecture by Dr. Louis-Noel Pouchet)
  16. Lecture 16 (10/22/2013, Prof. Palem): Coarse Coarse-Grained Parallelism (Chapter 6, contd)
  17. Lecture 17 (10/24/2013, Prof. Palem):  Coarse-Grained Parallelism (Chapter 6, contd), Control Dependence (Chapter 7)
  18. Lecture 18 (10/29/2013, Prof. Palem):  Control  Control Dependence (Chapter 7, contd)
  19. Lecture 19 (10/31/2013, Prof. Palem): Control  Control Dependence (Chapter 7, contd), Compiler Improvement of Register Usage (Chapter 8)
  20. Lecture 20 (11/05/2013, Prof. Palem):  Compiler  Compiler Improvement of Register Usage (Chapter 8, contd)
  21. Lecture 21 (11/07/2013, Prof. Palem):  Compiler  Compiler Improvement of Register Usage (Chapter 8, contd), Managing Cache (Chapter 9)
  22. Lecture 22 (11/12/2013, Prof. Palem):  Managing  Managing Cache (Chapter 9)
  23. Lecture 23 (11/14/2013, Prof. Palem):  Interprocedural Analysis and Optimization (Chapter 11)
  24. Lecture 24 (11/19/2013, Prof. Palem):  Compiling Array Assignments (Chapter 13)
  25. Lecture 25 (11/21/2013, Prof. Palem):  End-Semester Summary (Chapters 7, 8, 9, 11, 13)
  26. Lecture 26 (11/26/2013): Student project presentations
  27. Lecture 27 (12/03/2013): Student project presentations
  28. Lecture 28 (12/05/2013): Student project presentations

...

  1. Course text: Optimizing Compilers for Modern Architectures, Randy Allen & Ken Kennedy 
  2. A General Framework for Iteration-Reordering Loop Transformations. Vivek Sarkar  and Radhika Thekkath. Proceedings of the ACM SIGPLAN 19™92 19™92 Conference on  Programming Language Design and Implementation (PLDI), San Francisco, California,  pages 175-187, June 1992.
  3. Optimal Weighted Loop Fusion for Parallel Programs. Nimrod Megiddo and Vivek  Sarkar. Proceedings of the Ninth Annual ACM Symposium on Parallel Algorithms  and Architecture (SPAA), Newport, Rhode Island, June, 1997, pages 282-291.
  4. Array SSA form and its use in Parallelization. Kathleen Knobe and Vivek Sarkar.  Proceedings of the 25th ACM SIGPLAN-SIGACT Symposium on Principles of  Programming Languages, San Diego, California, January 1998.
  5. Automatic Selection of High Order Transformations in the IBM XL Fortran Compilers.  Vivek Sarkar. IBM Journal of Research and Development, 41(3), May 1997.

...

 You will be expected to follow the Honor Code in all homeworks and exams.  All submitted homeworks are expected to be the result of your individual effort. You are free to discuss course material and approaches to homework problems with your other classmates, the teaching assistants and the professor, but you should never misrepresent someone else’s else’s work as your own. If you use any material from external sources, you must provide proper attribution (as shown here).  Exams 1 and 2 are pledged under the Honor Code.  They test your individual understanding and knowledge of the material. Collaboration on exams is strictly forbidden.  Finally, it is also your responsibility to protect your homeworks and exams from unauthorized access. 

...