PROGRAMI
DERS TANITIM VE UYGULAMA BİLGİLERİ

Ders AdıKoduVerildiği YılVerildiği YarıyılSüresi (T+U)Yerel KredisiAKTS Kredisi
Grafik İşlem Birimi HesaplamaCENG 5453 + 037,50
 
Ders Bilgileri
Dersin Öğretim Diliİngilizce
Dersin SeviyesiYüksek Lisans
Dersin TürüSeçmeli
Dersin Veriliş BiçimiYüz Yüze
 
Dersin Öğrenme Kazanımları:

Bu dersi başarı ile tamamlayan öğrenciler:
1. GPU hesaplama için CUDA konusunda teorik bilgiye ve pratik deneyime sahip olur.
2. GPU'larda zaman alan bilgi işlem sorunlarını çözer.
3. Paralel programlama hakkında bilgi sahibi olur.
4. GPU programlama ortamlarını karşılaştırmak
 
Dersin Önkoşulları ve Birlikte Alınması Gereken DerslerYok
Daha Önce Alınmış Olması Önerilen DerslerYok
 
Dersin Tanımı:

Grafik İşlemci Üniteleri (GPU’lar), paralel uygulamaları yüksek verimlilikle çalıştırmak için uygun hale getiren yüzlerce küçük işlem birimi (pipeline) içerir. GPU’lar, performans ve programlanabilirlik açısından hızla gelişmekte olup, zaman alıcı hesaplama problemleri için büyük bir uygulama potansiyeli sunmaktadır. Bu ders, yoğun paralel hesaplama kaynaklarıyla uygulama geliştirme konusunda bilgi ve pratik deneyim kazandırmayı amaçlamaktadır. Öğrenciler, GPU'lar üzerinde yazılım tasarlayabilecek, geliştirebilecek ve optimize edebileceklerdir. Dersin laboratuvar bölümünde NVIDIA işlemcileri ve CUDA programlama aracı kullanılacaktır. Tüm programlama C dili tabanlı ortamlarda yapılacağından, C programlama dili konusunda iyi bir bilgi seviyesi gerekmektedir.
 
Dersin İçeriği (Haftalık Konu Dağılımı):
 
HaftaKonu
1GPU Hesaplamaya Giriş
2Cuda'ya Giriş
3OpenCL e giriş
4Thread Organizasyonu
5Temel Optimizasyonlar 1 - Küresel Bellek
6Temel Optimizasyonlar 2 - Paylaşılan Bellek
7Sabit Bellek ve Olaylar, Doku Belleği
8Kayan Nokta Performansı
9Paralel Programlama ve Hesaplamalı Düşünme
10Sayfa Kilitli ve Sıfır Kopyalı Ana Bilgisayar Belleği
11Atomik Fonksiyonlar
12Çoklu GPU
13Proje Sunumları
 
Kaynaklar:
Kirk, D. B., & Hwu, W.-m. W. (2022). Programming Massively Parallel Processors: A Hands-on Approach (4th ed.). Morgan Kaufmann.
 
Diğer Kaynaklar:
 
 
Öğretim Yöntem ve Teknikleri:
Haftalık 3 saatlik ders. C/C++ ya da MATLAB programlama bilgisi gereklidir.
 
Değerlendirme Sistemi:
YöntemAdetKatkı (%)
Ara Sınav1%15
Final Sınavı1%25
Ödev3%35
Proje1%25
 
Ders İşbaşı Eğitimi (iş yerinde eğitim) Gerektiriyor mu?
Gerektirmiyor