ECE 495A - Parallel Programming

Course Details

Lecture Hours: 1 Credits: 1

Counts as:

Experimental Course Offered:

Fall 2006

Requisites:

Prerequisites: Permission of instructor (Application required) Concurrent Prerequisites: Concurrent enrollment in ECE 264 required

Catalog Description:

This course is intended for advanced students who are concurrently enrolled in ECE 264. This course covers parallel programming under the PTHREADS and GPU programming models. This class will cover major forms of concurrency, concurrency control, and concurrent programs for special-purpose and emerging hardware platforms.

Required Text(s):

None.

Recommended Text(s):

None.

Learning Outcomes:

A student who successfully fulfills the course requirements will have demonstrated:
  1. an ability to read and write C programs that use parallelism. [a,b,c,e,k]

Lecture Outline:

Weeks Lectures
2 Introduction to Parallelism
2 Basic PTHREADS primitives
2 Mutexes and concurrent data structures
2 Data-parallel and phase-based computation
2 Task-parallelism and pipelines
4 GPU computation
1 Exams and quizzes

Assessment Method:

The assessment for this class will include of 4-6 programming projects, which will be parallel extensions of the students 264 projects. Additionally, there will be written homework assignments on parallelism.