Cyber Security (Master) (with Thesis) (English)
Master TR-NQF-HE: Level 7 QF-EHEA: Second Cycle EQF-LLL: Level 7

Course Introduction and Application Information

Course Code: COE5012
Course Name: Parallel Computing
Semester: Spring
Course Credits:
ECTS
6
Language of instruction: English
Course Condition:
Does the Course Require Work Experience?: No
Type of course: Departmental Elective
Course Level:
Master TR-NQF-HE:7. Master`s Degree QF-EHEA:Second Cycle EQF-LLL:7. Master`s Degree
Mode of Delivery:
Course Coordinator: Doç. Dr. AMIR SEYYEDABBASI
Course Lecturer(s): Dr. Öğr. Üy. SELİM KALAYCI
Course Assistants:

Course Objective and Content

Course Objectives: To teach current technologies and computational methods related to parallel information processing. To teach the design and analysis of parallel algorithms. To teach different parallel computation methods and their advantages/deficiencies.
Course Content: Parallel computing methods, algorithms and parallel architectures. Demonstration of parallel programming languages developed for different architectures on sample applications. Performance measurement and analysis of parallel programs.

Learning Outcomes

The students who have succeeded in this course;
1) Explain the structure and working principles of parallel computer systems.
2) Calculates parallel computer performance numerically.
3) Knows interconnection circuits in parallel systems.
4) Knows parallel programming methods.
5) Knows programming with GPU.
6) Knows the workload distribution problem in parallel systems.
7) It uses parallel performance monitoring tools.

Course Flow Plan

Week Subject Related Preparation
1) Parallel algorithm design
2) Decomposition techniques, distribution of calculation items and planning (mapping & scheduling)
3) Programming of public address systems: OpenMP, Cilk/Cilk++, Pthreads
4) Application development with OpenMP
5) Application development with Cilk/Cilk C++
6) Application development with Pthreads
7) Parallel computer architectures: Shared-memory parallel systems and cache consistency in these systems, distributed-memory parallel systems, interconnection circuits and routing
8) Programming scalable systems, message interlaced systems: MPI and PVM
9) Application development with MPI
10) Application development with MPI
11) GPU programming with CUDA
12) Application development with CUDA
13) Performance measurement and analysis of parallel programs
14) Parallel performance measurement and analysis applications

Sources

Course Notes / Textbooks:
References:

Course - Program Learning Outcome Relationship

Course Learning Outcomes

1

2

3

4

5

6

7

Program Outcomes
1) Being able to develop and deepen their knowledge at the level of expertise in the same or a different field, based on undergraduate level qualifications.
2) To be able to use the theoretical and applied knowledge at the level of expertise acquired in the field.
3) To be able to interpret and create new knowledge by integrating the knowledge gained in the field with the knowledge from different disciplines.
4) To be able to solve the problems encountered in the field by using research methods.
5) To be able to systematically transfer current developments in the field and their own studies to groups in and outside the field, in written, verbal and visual forms, by supporting them with quantitative and qualitative data.
6) To be able to communicate orally and in writing using a foreign language at least at the B2 General Level of the European Language Portfolio.
7) To be able to critically evaluate the knowledge and skills acquired in the field of expertise and to direct their learning.
8) To be able to use information and communication technologies at an advanced level along with computer software at the level required by the field.
9) To be able to supervise and teach these values ​​by observing social, scientific, cultural and ethical values ​​in the stages of collecting, interpreting, applying and announcing the data related to the field.
10) To be able to use the knowledge, problem solving and/or application skills they have internalized in their field in interdisciplinary studies.
11) Being able to independently carry out a work that requires expertise in the field.
12) To be able to develop new strategic approaches for the solution of complex and unpredictable problems encountered in applications related to the field and to produce solutions by taking responsibility.

Course - Learning Outcome Relationship

No Effect 1 Lowest 2 Average 3 Highest
       
Program Outcomes Level of Contribution
1) Being able to develop and deepen their knowledge at the level of expertise in the same or a different field, based on undergraduate level qualifications.
2) To be able to use the theoretical and applied knowledge at the level of expertise acquired in the field.
3) To be able to interpret and create new knowledge by integrating the knowledge gained in the field with the knowledge from different disciplines.
4) To be able to solve the problems encountered in the field by using research methods.
5) To be able to systematically transfer current developments in the field and their own studies to groups in and outside the field, in written, verbal and visual forms, by supporting them with quantitative and qualitative data.
6) To be able to communicate orally and in writing using a foreign language at least at the B2 General Level of the European Language Portfolio.
7) To be able to critically evaluate the knowledge and skills acquired in the field of expertise and to direct their learning.
8) To be able to use information and communication technologies at an advanced level along with computer software at the level required by the field.
9) To be able to supervise and teach these values ​​by observing social, scientific, cultural and ethical values ​​in the stages of collecting, interpreting, applying and announcing the data related to the field.
10) To be able to use the knowledge, problem solving and/or application skills they have internalized in their field in interdisciplinary studies.
11) Being able to independently carry out a work that requires expertise in the field.
12) To be able to develop new strategic approaches for the solution of complex and unpredictable problems encountered in applications related to the field and to produce solutions by taking responsibility.

Assessment & Grading

Semester Requirements Number of Activities Level of Contribution
Midterms 1 % 40
Final 1 % 60
total % 100
PERCENTAGE OF SEMESTER WORK % 40
PERCENTAGE OF FINAL WORK % 60
total % 100

Workload and ECTS Credit Calculation

Activities Number of Activities Preparation for the Activity Spent for the Activity Itself Completing the Activity Requirements Workload
Midterms 70 0 0
Final 90 0 0
Total Workload 0