Dr. Asim Karim

Office: Room 132
Phone: 2132
Office Hours Tue and Thu: 10.30AM-12.00



Teaching Assistant:

Ali Naqi Shaheen

Office/Lab: Phd lab, Room 235 (outside CS wing)

Office Hours:

Tues and Thursday: 2.00PM-4.00PM


November 11
Solution for assignment 4 has been posted.

November 3
Solution for assignment 3 has been posted.

October 29
Assignment 4 has been posted. It is due by 5PM on November 8.

October 27
Lecture slides for OpenMP have been posted.
Solution for quiz 5 has been posted.

October 24
Lecture slides for sparse matrix algorithms have been posted.

October 17
Assignment 3 has been posted. It is due October 28.
Solution for assignment 2 has been posted. Please do go through it.

October 14
Solutions for quiz 4 have been posted.

October 10
Node0 to Node4 are up. Sorry for being late! Click here for a basic tutorial on LAM/MPI..

October 8
Lecture slides for week 6 have been posted.

October 7
The solution to the Midterm exam has been posted.

October 3
The project has been posted on the Assignments page. It is due Nov. 6 at class time.

September 27
The due date for assignment 2 has been changed to Oct 14. Also, a few corrections have been made to the assignment.
Solutions for assignment 1 and quiz 3 have been posted.

September 25
Assignment 2 has been posted!

September 23
Handouts for MPI, OpenMP and PThreads have been uploaded. Copies of these would be placed in the library as well. The Course Resources page has been updated.

September 22
Lecture slides for week 4 have been posted. Readings from text book: 2.1, 2.3 and 2.4 (to get an overview of interconnection networks), 2.7, chapter 4 with more emphasis on 4.1 and 4.3.

September 18
Solutions for quiz 2 have been posted.

September 15
Solutions to quiz 1 have been posted.
Parallel Computing Overview lecture slides have been uploaded. Minor changes/corrections have been made to Data Dependences and Data Locality slides (these changes will be discussed in class).

September 9
Assignment 1 has been posted!

September 8
Lectures slides for week two have been uploaded
Some resources for data locality and dependency analysis uploaded [You can find more material by doing a web search]


Course Description

High-performance computer architecture, enhancement of performance on single and multi processor computers, parallelization overheads; performance evaluation.

 Course Objectives

After completing the course, the student can be expected to:

        understand the architecture of several types of high-performance computers and the implications on the performance of algorithms on these architectures.

        be able to design and implement  efficient algorithms for high-performance computers.

        understand the current state-of-the art in parallel programming environments, portable software libraries and program development.


CS 223 Computer organization and assembly language, CS 213 Data structures and algorithms, Senior or higher standing; CS 423 Computer architecture (recommended)


Introduction to Parallel Computing: Design and Analysis of Algorithms, by V. Kumar, A. Grama, A. Gupta and G. Karypis, The Benjamin/Cummins Publishing Company, Inc., Redwood City, CA, 1994. Handouts will be provided to supplement the text.


Assignments (including programming):   25%

Project:                                                            10%

Quizzes                                                            10%

Mid-term exam:                                                25%

Final exam:                                                       30%