COMP 472 Parallel and Distributed SystemsMEF UniversityDegree Programs Computer EngineeringGeneral Information For StudentsDiploma SupplementErasmus Policy Statement
Computer Engineering
Bachelor Length of the Programme: 4 Number of Credits: 240 TR-NQF-HE: Level 6 QF-EHEA: First Cycle EQF: Level 6

Ders Genel Tanıtım Bilgileri

School/Faculty/Institute Faculty of Engineering
Course Code COMP 472
Course Title in English Parallel and Distributed Systems
Course Title in Turkish Paralel ve Dağıtık Sistemler
Language of Instruction EN
Type of Course Flipped Classroom
Level of Course Introductory
Semester Fall
Contact Hours per Week
Lecture: 3 Recitation: none Lab: none Other: none
Estimated Student Workload 130 hours per semester
Number of Credits 6 ECTS
Grading Mode Standard Letter Grade
Pre-requisites None
Expected Prior Knowledge Introduction to Programming (basic C and Python), Basic understanding of Computer Architecture.
Co-requisites None
Registration Restrictions Senior Undergraduate Students/Junior Graduate Students
Overall Educational Objective To learn about the fundamentals of parallel and distributed systems, data processing and storage technologies.
Course Description This is an introductory course for parallel and distributed systems. Fundamental concepts such as parallel computing platforms, parallel programming models and parallel algorithm design, , performance of parallel programs and basics of communication on distributed systems and the basics of GPU programming will be discussed.
Course Description in Turkish Bu ders paralel ve dağıtılmış sistemlere giriş dersidir. Paralel hesaplama platformları, paralel programlama modelleri ve paralel algoritma tasarımı gibi temel kavramlar, paralel programların performansı ve dağıtık sistemlerde iletişimin temelleri ve GPU programlamanın temelleri tartışılacaktır.

Course Learning Outcomes and Competences

Upon successful completion of the course, the learner is expected to be able to:
1) know the fundamentals of parallel architectures and parallel programming paradigms
2) design and implement parallel algorithms
3) design and implement the communication concepts on distributed systems
4) know how to optimize the performance of parallel algorithms on different computing platforms
Program Learning Outcomes/Course Learning Outcomes 1 2 3 4
1) An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics
2) An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors
3) An ability to communicate effectively with a range of audiences
4) An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts
5) An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives
6) An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions
7) An ability to acquire and apply new knowledge as needed, using appropriate learning strategies.

Relation to Program Outcomes and Competences

N None S Supportive H Highly Related
     
Program Outcomes and Competences Level Assessed by
1) An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics H Exam,HW
2) An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors H Exam,HW
3) An ability to communicate effectively with a range of audiences N
4) An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts N
5) An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives H Project
6) An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions N
7) An ability to acquire and apply new knowledge as needed, using appropriate learning strategies. N
Prepared by and Date BUSE YILMAZ , February 2024
Course Coordinator BUSE YILMAZ
Semester Fall
Name of Instructor Asst. Prof. Dr. BUSE YILMAZ

Course Contents

Week Subject
1) Introduction to Distributed and Parallel Systems
2) Parallel hardware and software
3) Principles of parallel algorithm design
4) Programming on shared memory systems with PThreads
5) Programming on shared memory systems with PThreads cont'd
6) Programming on shared memory systems with OpenMP
7) Programming on shared memory systems with OpenMP cont'd
8) Data dependency & Task parallelism
9) Distributed memory Programming with MPI /midterm #1
10) Distributed memory Programming with MPI cont'd
11) Analysis of parallel program executions
12) Parallel algorithms
13) GPU Programming with CUDA
14) GPU Programming with CUDA cont'd
15) Final Exam/Project/Presentation
16) Final Exam/Project/Presentation
Required/Recommended ReadingsPeter Pacheco, Matthew Malensek - An Introduction to Parallel Programming (2nd Ed) – Elsevier, Paperback ISBN: 9780128046050, eBook ISBN: 9780128046180 Recommended: Ananth Grama, Anshul Gupta, George Karypis, Vipin Kumar - Introduction to Parallel Computing (2nd Ed), Addison-Wesley, ISBN: 978-0201648652
Teaching MethodsLectures/contact hours using ‘flipped classroom’
Homework and ProjectsHomeworks (mini-projects), quizzes, inclass teamwork assignments
Laboratory Worknone
Computer UseRequired
Other Activitiespaper presentation
Assessment Methods
Assessment Tools Count Weight
Quiz(zes) 5 % 20
Homework Assignments 3 % 20
Presentation 1 % 10
Midterm(s) 2 % 50
TOTAL % 100
Course Administration yilmazbuse@mef.edu.tr
0212 395 3719
Instructor’s contact: - Office: 5th Floor, Room 556 - Phone number: 0212 395 3719 - Email address: yilmazbuse@mef.edu.tr Rules for attendance: Not enforced Rules for late submissions: Late submissions are allowed only for homeworks. First day 10 points, second day 20 and third day 30 points. After 3 days the submission will receive a zero. Rules for missing an exam: Provided that proper documents are presented, each missed midterm by the student will be given the grade of other assessments about the related topics. No make-up exam shall be given. A reminder of proper classroom behavior, code of student conduct: YÖK regulations. Statement on plagiarism: Plagiarism or any type of ethical misconduct shall not be tolerated. For more information, please see the corresponding YÖK regulations.

ECTS Student Workload Estimation

Activity No/Weeks Hours Calculation
No/Weeks per Semester Preparing for the Activity Spent in the Activity Itself Completing the Activity Requirements
Course Hours 14 2 2.5 63
Presentations / Seminar 1 6 1 7
Homework Assignments 3 7 21
Quiz(zes) 4 2 1 12
Midterm(s) 2 15 2 34
Total Workload 137
Total Workload/25 5.5
ECTS 6