Instıtute Of Graduate Educatıon
Informatıon Technologıes Master's Program (Wıthout Thesıs)

Course Information

PARALLEL PROGRAMMING
Code Semester Theoretical Practice National Credit ECTS Credit
Hour / Week
IT566 Fall 3 0 3 6

Prerequisites and co-requisites None
Language of instruction Turkish
Type Elective
Level of Course Master's
Lecturer Asst. Prof. Dr. Omid SHARIFI
Mode of Delivery Face to Face
Suggested Subject None
Professional practise ( internship ) None
Objectives of the Course Aim of the course is to understand the theoretical background of Parallel systems and algorithms, and also develop parallel programs for related problems.
Contents of the Course Parallel Computers. Message passing computing. Embarrassingly parallel computations. Partitioning and Divide&Conquer strategies.Pipelined computations. Synchronous Computations. Load Balancing and Termination. Detection Programming with Shared Memory. Distributed Shared Memory Systems and Programming. Sorting algorithms.

Learning Outcomes of Course

# Learning Outcomes
1 To understand the data transmission methods for parallel systems.
2 To understand and compare different parallel platforms such as message passing and shared address space.
3 Ability to do asimptotik analysis on a given parallel algorithm.
4 Ability to develop an effective parallel algorithm for a given problem.
5 Ability to understand and compare different parallel algoritm design techniques such as Data Parallel, Function Parallel and Client-Server.

Course Syllabus

# Subjects Teaching Methods and Technics
1 Introduction to course, discussing contents. Lecturing
2 Parallel Computers Lecturing
3 Message Passing Computing Lecturing
4 Embarrassingly Parallel Computations Lecturing
5 Divide & Conquer strategies Lecturing
6 Pipelined Computations Lecturing
7 MIDTERM Exam
8 Load balancing and termination detection Lecturing
9 Shared memory programming Lecturing
10 Distributed memory systems and programming Lecturing
11 Sorting algorithms Lecturing
12 Sorting algorithms Lecturing
13 Image processing Lecturing
14 Final Exam Exam
15
16

Course Syllabus

# Material / Resources Information About Resources Reference / Recommended Resources
1 J.E. Hopcroft, R. Motwani, J.D. Ullman, “Introduction to Automata Theory, Languages, and Computation”, 2nd or above editions, Addison-Wesley.

Method of Assessment

# Weight Work Type Work Title
1 40% Mid-Term Exam Mid-Term Exam
2 60% Final Exam Final Exam

Relationship between Learning Outcomes of Course and Program Outcomes

# Learning Outcomes Program Outcomes Method of Assessment
1 To understand the data transmission methods for parallel systems. 3͵4͵11͵13 1͵2
2 To understand and compare different parallel platforms such as message passing and shared address space. 3͵4͵11͵13 1͵2
3 Ability to do asimptotik analysis on a given parallel algorithm. 3͵4͵11͵13 1͵2
4 Ability to develop an effective parallel algorithm for a given problem. 3͵4͵11͵13 1͵2
5 Ability to understand and compare different parallel algoritm design techniques such as Data Parallel, Function Parallel and Client-Server. 3͵4͵11͵13 1͵2
PS. The numbers, which are shown in the column Method of Assessment, presents the methods shown in the previous table, titled as Method of Assessment.

Work Load Details

# Type of Work Quantity Time (Hour) Work Load
1 Course Duration 14 3 42
2 Course Duration Except Class (Preliminary Study, Enhancement) 14 3 42
3 Presentation and Seminar Preparation 0 0 0
4 Web Research, Library and Archival Work 0 0 0
5 Document/Information Listing 0 0 0
6 Workshop 0 0 0
7 Preparation for Midterm Exam 0 0 0
8 Midterm Exam 1 1 1
9 Quiz 0 0 0
10 Homework 1 1 1
11 Midterm Project 0 0 0
12 Midterm Exercise 0 0 0
13 Final Project 0 0 0
14 Final Exercise 1 64 64
15 Preparation for Final Exam 0 0 0
16 Final Exam 1 1 1
  151