CS505 - Introduction to Parallel Computing

for Computational Scientists/Engineers and Computer Scientists


Overview

Parallel computing has become the dominant technique for achieving high performance in computational science and engineering research. Parallel computing systems are now becoming mainstream in commercial sectors as well, due to the performance demands and requirements of today's engineering, database, and financial applications. Multiprocessor systems based on commodity processors (IA32, IA64, G4, Alpha, UltraSparc, Power3, Power4) are now common and offer excellent performance for the price. However, parallel computing is relatively new to college curricula; until recently, parallel computing was largely learned on the side (for research scientists) or on the job (in industry).

This class will discuss architectures of modern parallel computers (briefly) and will teach students how to write parallel programs for these parallel computers. This class will be very 'applied' in nature: there will be more emphasis on parallel programming libraries than on abstract theoretical parallel programming concepts or computer engineering details.

Prerequisites

Students must have prior programming experience using either C or Fortran. Experience using Unix workstations and developing scientific codes is helpful but not required.

Instructors

Class Schedule and Location

Classes will meet Mondays and Wednesdays 5:00PM until 6:15PM at BAM 343 at SDSU.

Office Hours

Amit Majumdar : Before or after class in Rm 233. Email instructor to schedule meeting.

Topics (tentative) (order of topics may also change)

Grading

Lectures, Assignments, and Quizzes

References Textbooks

Questions?

Please feel free to contact any of the instructors if you have any questions.