Parallel Programming Course – Spring 2025
Course Code: IT00CD91-3005
Credits: 5 ECTS
Period: P4
Language: English
Welcome to the course website for Parallel Programming taught at Ã…bo Akademi University.
This course introduces the key models, tools, and techniques in parallel programming, covering shared-memory, GPU, and distributed computing with hands-on experience using OpenMP, CUDA, and MPI in C++.
🧠Course Description
This course offers a practical introduction to parallel programming, covering key models and tools used in modern high-performance computing. Students will learn to write efficient code for multicore CPUs, GPUs, and distributed systems using C++, OpenMP, CUDA, and MPI.
🗓 Logistics
- Start Date: March 24, 2025
- End Date: May 26, 2025
- Lectures: Mondays, 12.30 – 14.00 (Room B0215/216, Academil, Vaasa + Zoom)
- Teacher: Alireza Olama
All lectures are hybrid and recorded. Zoom recordings will be shared on Moodle and YouTube.
📚 Prerequisites
- C/C++ programming experience
- Operating system concepts
- Machine organization
📖 References
- An Introduction to Parallel Programming, Peter Pacheco, Matthew Malensek
- Programming Massively Parallel Processors, Wen-mei W. Hwu, David B. Kirk, Izzat El Hajj
📂 Lectures
Week 1: Course Intro & Parallel Hardware
Week 2: C/C++ Refresher
Week 3–4: Shared Memory Programming with OpenMP
Week 5–7: GPU Programming with CUDA
Week 8–9: Distributed Programming with MPI
Week 10: Distributed Machine Learning
🎥 Lecture Videos
All lectures will be uploaded to YouTube and linked here:
For questions or registration issues, email the instructor: Alireza.Olama@abo.fi