Generated on Tue Oct 25 10:19:18 2022
CS 491: Parallel Programming (JSON)
Catalog description: Programming of shared memory and distributed memory machines; tools and languages for parallel programming; techniques for parallel programming; parallel programming environments.
Prerequisites: At least a C- in C S 370 or consent of instructor. (Catalog Link)
Credits: 3 (3)
Coordinator: Shaun Cooper
Textbook: Principles of Parallel Programming, Calvin Lin, & Larry Snyder, 2009, Pearson, ISBN-13: 978-0321487902 ISBN-10: 0321487907
(also: online reading)
BS degree role: selected elective
Course Learning Objectives
- Describe existing parallel architectures including shared memory versus distributed memory platforms
- Apply basic techniques for organizing parallel computations
- Apply basic techniques for performance measurement and theoretical limitations of parallelism
- Explain alternative parallel techniques and hardware
- Perform performance Analysis of different parallel programming technices
- Program shared memory machines using threads, processes, and the OpenMP library
- Program using a message passing paradigm and obtain working knowledge of the Message Passing Interface (MPI)
Course Practicum Requirements
- Program using MPI
- Conduct performance analysis of parallel programs
- Program using different HPC paradigms to include GPUs, shared memory, and distributed architecture
Course Topics
- TBD
Course Improvement Decisions
(Course improvement decisions or recommendations from past assessments)
- none
ABET Outcome Coverage
(Provide Mapping to ABET Student Outcomes)
- TBD
Other Notes
(Any important notes or issues to consider)
- none