Ders Bilgileri

#### Ders Tanımı

Ders Kodu Yarıyıl T+U Saat Kredi AKTS
PARALLEL COMPUTING BSM 444 8 3 + 0 3 5
 Dersin Dili Türkçe Dersin Seviyesi Lisans Dersin Türü SECMELI Dersin Koordinatörü Prof.Dr. AHMET ÖZMEN Dersi Verenler Dersin Yardımcıları Dersin Kategorisi Dersin Amacı This course aims to teach contemporary technology and computing methods of parallel processing. The course covers parallel algorithm design and analysis. It also includes alternative parallel computation methods with their advantages and drawbacks. Dersin İçeriği Parallel computation methods, algorithms and parallel architectures. Showing parallel programming languages on some example applications developed for different parallel architectures. Paralel performance measurement and analysis.
 Dersin Öğrenme Çıktıları Öğretim Yöntemleri Ölçme Yöntemleri 1 - Explains parallel computer systems´ structures and their working principals 1 - A - 2 - Calculates parallel computer performance quantitatively 1 - A - 3 - Knows inter-networking used in parallel computing 1 - 2 - 4 - A - C - 4 - Knows parallel programming methods 1 - 2 - 4 - A - C - 5 - Knows GPU programming 1 - 4 - A - C - 6 - Knows workload balancing issues at parallel systems 1 - 4 - A - C - 7 - Uses parallel performance monitoring tools 1 - 4 - A - C -
 Öğretim Yöntemleri: 1:Lecture 2:Question-Answer 4:Drilland Practice Ölçme Yöntemleri: A:Testing C:Homework

#### Ders Akışı

Hafta Konular ÖnHazırlık
1 Parallel algorithm design
2 Decomposition techniques, distribution of computational structures and planning (mapping & scheduling)
3 Programming on shared memory systems: OpenMP, Cilk/Cilk++, Pthreads
4 Application development using OpenMP
5 Application development using Cilk/Cilk++
6 Application development using with Pthreads
7 Parallel computer architectures: Shared memory systems and cache coherency, distributed parallel systems, interconnection networks and routing
8 Programming with scalable systems, message passing systems: MPI and PVM
9 Application development using with MPI
10 Application development using with MPI
11 GPU programming with CUDA
12 Application development using with CUDA
13 Parallel performance measurement and analysis
14 Examples of parallel performance measurement and analysis

#### Kaynaklar

Ders Notu 1. Introduction to Parallel Computing, A. Grama, A. Gupta, G.Karypis, V. Kumar, Addison Wesley.
Ders Kaynakları 1. Parallel Computing, Theory and practice, M.J.Quinn, McGraw Hill.
2. Parallel programming wiyh MPI, P.S. Pacheco.Morgan Kaufmann.
3. GPU Gems 1&2, Nvidia.

#### Dersin Program Çıktılarına Katkısı

No Program Öğrenme Çıktıları KatkıDüzeyi
1 2 3 4 5
1 To have sufficient foundations on engineering subjects such as science and discrete mathematics, probability/statistics; an ability to use theoretical and applied knowledge of these subjects together for engineering solutions, X
2 An ability to determine, describe, formulate and solve engineering problems; for this purpose, an ability to select and apply proper analytic and modeling methods,al background in describing, formulating, modeling and analyzing the engineering problem, with a consideration for appropriate analytical solutions in all necessary situations X
3 An ability to select and use modern techniques and tools for engineering applications; an ability to use information technologies efficiently, X
4 An ability to analyze a system, a component or a process and design a system under real limits to meet desired needs; in this direction, an ability to apply modern design methods, X
5 An ability to design, conduct experiment, collect data, analyze and comment on the results and consciousness of becoming a volunteer on research, X
6 Understanding, awareness of administration, control, development and security/reliability issues about information technologies, X
7 An ability to work efficiently in multidisciplinary teams, self confidence to take responsibility, X
8 An ability to present himself/herself or a problem with oral/written techniques and have efficient communication skills; know at least one extra language, X
9 An awareness about importance of lifelong learning; an ability to update his/her knowledge continuously by means of following advances in science and technology, X
10 Understanding, practicing of professional and ethical responsibilities, an ability to disseminate this responsibility on society, X
11 An understanding of project management, workplace applications, health issues of laborers, environment and job safety; an awareness about legal consequences of engineering applications, X
12 An understanding universal and local effects of engineering solutions; awareness of entrepreneurial and innovation and to have knowledge about contemporary problems. X

#### Değerlendirme Sistemi

YARIYIL İÇİ ÇALIŞMALARI SIRA KATKI YÜZDESİ
AraSinav 1 70
KisaSinav 1 10
Odev 1 10
KisaSinav 2 10
Toplam 100
Yıliçinin Başarıya Oranı 50
Finalin Başarıya Oranı 50
Toplam 100

#### AKTS - İş Yükü

Etkinlik Sayısı Süresi(Saat) Toplam İş yükü(Saat)
Course Duration (Including the exam week: 16x Total course hours) 16 3 48
Hours for off-the-classroom study (Pre-study, practice) 16 3 48
Mid-terms 1 10 10
Quiz 2 5 10
Assignment 1 5 5
Final examination 1 15 15
Toplam İş Yükü 136
Toplam İş Yükü /25(s) 5.44
Dersin AKTS Kredisi 5.44
; ;