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
