CO316 - Computer Architecture Lab, July-Dec, 2018

Welcome to the CO316 - Computer Architecture Lab course page. Course related information - Objectives, Outcomes, Syllabus and Rubrics.

Course Content

Programming Paradigms: CUDA and Xeon Phi. Examples of heterogeneous parallel computing solutions. Related important publications from literature.

Reference Materials

Reference Books/Textbooks:

  • Wen-Mei W Hwu, David B Kirk, Programming Massively Parallel Processors A Hands-on Approach, Morgann Kaufmann, 3e.
  • Jim Jeffers, James Reinders, Avinash Sodani, Intel Xeon Phi Processor High Performance Programming, KNL Edition, MK, 2016.
  • Rezaur Rahman, Intel Xeon Phi Coprocessor Architecture and Tools, Apress Open, 2013.
  • Recent publications in IPDPS, PACT, and similar.

Online Course

A lot of online material is available. Go ahead and find ones that match your taste.

Course Evaluation

Course components: Programming assignments, Programming tests, Course project, Midsem and Endsem examinations. Your grade will rely heavily on your course project.

Programming Assignments

Send your assignment report and snapshots to co316.nitk@gmail.com.

Course Schedule

Date/Week TypeSlides Annotated Slides
Week 0 Lecture Course Introduction..
Announcement A0-A3 uploaded.
Lecture Introduction to Heterogeneous Parallel Computing.
Reading: J. Nickolls and W. J. Dally, "The GPU Computing Era," in IEEE Micro, vol. 30, no. 2, pp. 56-69, March-April 2010.
Lecture Introduction to CUDA C.
Week 1 Lecture Multidimensional Kernels - Picture Example
Reading: Chapter 3, WMH, 3e.
Week 2-5 Lecture Matrix Multiplication in CUDA
Reading: Sections 4.1 - 4.2, WMH, 3e.
Lecture GPU Memory
Reading: Sections 4.3, WMH, 3e.
Lecture Tiled Matrix Multiplication
Reading: Rest of Chapter 4, WMH, 3e.