CMPE478
Parallel Processing
Course Information
Faculty | Faculty of Engineering |
Course Code | CMPE478 |
Course Title | Parallel Processing |
Language of Instruction | English |
Course Semester | Fall |
Course Hours | Lecture: 3, PS:0, Labs: 0 |
Course Credits | 3 |
ECTS | 6 |
Grading Mode | Letter Grade |
Prerequisites | CMPE322 |
Corequisites | None |
Catalog Description
Parallel machine and performance models: PRAM, speedup, work efficiency, scalability, Brent’s theorem. Parallel programming with message passing and multi-threading libraries. Parallel algorithms: Prefix computation, pointer jumping, list ranking, Euler tours on trees, sorting. Parallel architectures: Multiprocessors, multicomputers and Flynn’s taxonomy, SIMD, MIMD, SPMD, interconnection topologies. Load balancing and graph partitioning methods.
Course Learning Outcomes
- Explain high-performance computing terminology and concepts
- Design scalable parallel algorithms
- Develop parallel programs for distributed memory systems using MPI and for shared memory systems using OpenMP/Pthreads
- Develop parallel programs for GPUs