Public View

You are viewing the public version of the syllabus. If you have a SUNet account, you can view the richer version of the syllabus after logging in.

Parallel Computing
CS 406

Faculty: Faculty of Engineering and Natural Sciences
Semester: Fall 2025-2026
Course: Parallel Computing - CS 406
Classroom: FASS-1010
Level of course: Undergraduate
Course Credits: SU Credit:3.000, ECTS:6, Engineering:6
Prerequisites: CS 301
Corequisites: -
Course Type: Lecture

Instructor(s) Information

Kamer Kaya

Course Information

Catalog Course Description
This course is an introduction to various aspects of parallel computing. Topics include: taxonomy of parallel architectures and interconnection networks, parallel algorithms and programming, speed-up, efficiency and performance issues; control parallel, data parallel and data flow models; parallel algorithms for sorting, matrix operations, graph problems.
Course Learning Outcomes:
1. At the end of the course the student will understand the evolution of high performance and parallel computing with respect to laws and modern hardware.
2. At the end of the course the student will be able to design, apply, and analyze parallel algorithms in problem solving.
3. At the end of the course the student will be competent to measure the performance of parallel and distributed programs. S/he will be able to evaluate whether a parallel and distributed application is efficient or not and propose techniques to increase the performance.
4. At the end of the course the student will gain hands-on experience with GPU programming with CUDA and multicore programming with OpenMP.
Course Objective
To teach fundamentals of traditional and modern concepts in parallel computing with a sufficient hands-on experience on parallel programming

Course Materials

Resources:
There is no official book. Slides will be provided.
Technology Requirements:
Server accounts will be provided to the students.