Genel Bilgi
Kod | CENG019 |
Ad | Paralel and Distributed Computing |
Dönem | 2024-2025 Eğitim-Öğretim Yılı |
Yarıyıl | . Yarıyıl |
Süre (T+U) | 3-0 (T-U) (17 Hafta) |
AKTS | 6 AKTS |
Yerel Kredi | 3 Yerel Kredi |
Eğitim Dil | İngilizce |
Seviye | Yüksek Lisans Dersi |
Tür | Normal |
Öğretim Şekli | Yüz Yüze Öğretim |
Bilgi Paketi Koordinatörü | Dr. Öğr. Üyesi SERKAN KARTAL |
Dersin Amacı / Hedefi
Paralel ve dağıtık hesaplamalar ile ilgili temel soruları anlayabilme ve bunlar için farklı çözümleri değerlendirebilme. Paralel ve dağıtık programlama paradigmalarını ve algoritmalarını anlama, bunları kullanarak çözümler uygulama ve test etme pratiği kazanma.
Dersin İçeriği
Bu ders paralel ve dağıtılmış hesaplamaları, paralel ve dağıtılmış mimarileri ve sistemleri, paralel ve dağıtılmış programlama paradigmalarını, paralel algoritmaları, paralel ve dağıtımlı hesaplamaların bilimsel ve diğer uygulamalarını içeren geniş bir konu yelpazesini kapsamaktadır.
Dersin Ön Koşulu
C proğramlama ve bilgisayar mimarisi hakkında temel bilgi sahibi olma.
Kaynaklar
An Introduction to Parallel Programming by Peter Pacheco
Notlar
Designing and Building Parallel Programs, by Ian Foster
Dersin Öğrenme Çıktıları
Sıra | Dersin Öğrenme Çıktıları |
---|---|
ÖÇ01 | dağıtılmış paralellik içeren programlar geliştirir, paralel hata ayıklama kullanır |
ÖÇ02 | paralel algoritmalar kurar, belirli bir algoritmada paralelliği tanımlar ve uygular |
ÖÇ03 | paralel algoritmaların verim, hız vb. özelliklerini analiz eder |
ÖÇ04 | Paralel algoritmaların performansını analiz eder |
Program Öğrenme Çıktıları ile İlişkisi
Sıra | Tür | Program Öğrenme Çıktıları | Duzey |
---|---|---|---|
PÖÇ01 | Bilgi - Kuramsal, Olgusal | Lisans düzeyinde kazanılan yetkinlikler temelinde Bilgisayar Mühendisliği temel alanında özgün çalışmalar için gerekli temeli sağlayan ileri düzeyde bilgi ve kavrayışa sahiptir. | 3 |
PÖÇ02 | Bilgi - Kuramsal, Olgusal | Mühendislik alanında bilimsel araştırma yaparak bilgiye genişlemesine ve derinlemesine ulaşır, bilgiyi değerlendirir, yorumlar ve uygular. | 2 |
PÖÇ03 | Yetkinlikler - Öğrenme Yetkinliği | Mesleğinin yeni ve gelişmekte olan uygulamalarının farkında olup, gerektiğinde bunları inceler ve öğrenir. | 4 |
PÖÇ04 | Yetkinlikler - Öğrenme Yetkinliği | Mühendislik problemlerini kurgular, çözmek için yöntem geliştirir ve çözümlerde yenilikçi yöntemler uygular. | 5 |
PÖÇ05 | Yetkinlikler - Öğrenme Yetkinliği | Analitik, modelleme ve deneysel esaslı araştırmaları tasarlar ve uygular, bu süreçte karşılaşılan karmaşık durumları çözümler ve yorumlar. | 4 |
PÖÇ06 | Yetkinlikler - Öğrenme Yetkinliği | Yeni ve/veya özgün fikir ve yöntemler geliştirir, sistem, parça veya süreç tasarımlarında yenilikçi çözümler geliştirir. | |
PÖÇ07 | Beceriler - Bilişsel, Uygulamalı | Öğrenme becerilerine sahip olur. | |
PÖÇ08 | Beceriler - Bilişsel, Uygulamalı | Bilgisayar Mühendisliğinin yeni ve gelişmekte olan uygulamalarının farkında olup gerektiğinde bunları inceler ve öğrenir. | 2 |
PÖÇ09 | Beceriler - Bilişsel, Uygulamalı | Çalışmalarının süreç ve sonuçlarını Bilgisayar Mühendisliği alanındaki veya alan dışındaki ulusal ve uluslararası ortamlarda açık bir şekilde yazılı veya sözlü olarak aktarır. | |
PÖÇ10 | Beceriler - Bilişsel, Uygulamalı | Bilgisayar Mühendisliğinde uygulanan güncel teknik ve yöntemler ile bunların kısıtları hakkında kapsamlı bilgiye sahip olur. | 3 |
PÖÇ11 | Beceriler - Bilişsel, Uygulamalı | Bilgisayar Mühendisliğinin gerektirdiği düzeyde bilgisayar yazılımı ile birlikte bilişim ve iletişim teknolojilerini ileri düzeyde etkileşimli olarak kullanır. | |
PÖÇ12 | Bilgi - Kuramsal, Olgusal | Mesleki tüm etkinliklerde toplumsal, bilimsel ve etik değerleri gözetir. |
Haftalık Akış
Hafta | Konu | Ön Hazırlık | Yöntemler |
---|---|---|---|
1 | Giriş, Paralel ve Dağıtık Hesaplama | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
2 | Paralel ve Dağıtık Mimariler, Soket programlama | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
3 | Paralel Performans, Paylaşılan Bellek ve İplikler | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
4 | Paralel Algoritmalar | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
5 | Paralel Algoritmalar, OpenMP | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
6 | Ölçeklenebilir Algoritmalar, Mesaj Geçişi | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
7 | MPI ve Teragrid | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
8 | Ara Sınav | Ders notları ve uygulamalara çalışmak | Ölçme Yöntemleri: Yazılı Sınav |
9 | Dağıtık Sistemler, MapReduce, Kümeler | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
10 | Dağıtık Koordinasyon, Güvenlik | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
11 | Dağıtık Dosya Sistemleri | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
12 | Dağıtık Dosya Sistemleri, Güvenlik | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
13 | Dağıtılmış Paylaşılan Bellek | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
14 | Bulut Bilişim ve Proje Sunumları | Ders notunun ilgili bölümünü okumak | Öğretim Yöntemleri: Anlatım |
15 | Proje Sunumları | Sunum Hazırlama | Öğretim Yöntemleri: Anlatım |
16 | Yarıyıl Sonu Sınavları | Ders notları ve uygulamalara çalışmak | Ölçme Yöntemleri: Yazılı Sınav |
17 | Yarıyıl Sonu Sınavları | Ders notları ve uygulamalara çalışmak | Ölçme Yöntemleri: Yazılı Sınav |
Öğrenci İş Yükü - AKTS
Çalışmalar | Sayısı | Süresi (Saat) | İş Yükü (Saat) |
---|---|---|---|
Ders ile İlgili Çalışmalar | |||
Ders (Sınav haftaları dahil değildir) | 14 | 3 | 42 |
Sınıf Dışı Ders Çalışma (Ön çalışma, pekiştirme) | 14 | 5 | 70 |
Değerlendirmeler ile İlgili Çalışmalar | |||
Ödev, Proje, Diğer | 0 | 0 | 0 |
Ara Sınavlar (Yazılı, Sözlü, vs.) | 1 | 15 | 15 |
Yarıyıl/Yıl Sonu/Final Sınavı | 1 | 30 | 30 |
Toplam İş Yükü (Saat) | 157 | ||
Toplam İş Yükü / 25 (s) | 6,28 | ||
AKTS | 6 AKTS |