CS52500
Credit Hours:
3Start Date:
January 19, 2021Learning Objective:
Parallel Computing deals with emerging trends in the use of large scale computing platforms ranging from desktop multicore processors, tightly coupled SMPs, message passing platforms, and state-of-the-art virtualized cloud computing environments.Description:
Parallel computing for science and engineering applications: parallel programming and performance evaluation, parallel libraries and problem-solving environments, models of parallel computing and run-time support systems, and selected applications.
Topics Covered:
Part 1: Parallel and distributed computing architectures; shared memory processors; distributed memory processors; multicore processors. Part 2: Parallel Programming; programming models; OpenMP for shared memory programs; MPI library for message passing; thread based programming. Part 3: Parallel algorithms; sorting; matrix-vector multiplication; matrix computations; graph algorithms. Part 4: Applications of these algorithms from various domains will be discussed.Prerequisites:
A bachelor degree in computer science or an equivalent field. Students not in the Computer Science master's program should seek department permission to register.Applied / Theory:
Web Address:
http://www.cs.purdue.edu/homes/ayg/CS525/index.htmlHomework:
Approx. 6 assignmentsExams:
1 Midterm and 1 Final Textbooks:
Required: Intro to Parallel Computing (2nd Edition) by Ananth Grama, Pearson, ISBN:9780201648652 Computer Requirements:
ProEd Minimum Requirements:
view
Tuition & Fees:
view