Yüksek LisansAçık Erişim

Tiling-based programming model for GPU clusters targeting structured grids

2019
0 görüntülenme
0 i̇ndirme
Danışman: Dr. Öğr. Üyesi Didem Unat

Özet (TR)

Günümüzde, TOP500 listesindeki süper bilgisayarların % 25'inden fazlası, büyük ölçüde paralel ve güç açısından verimli mimarileri nedeniyle GPU'ları kullanmaktadır. Ancak, büyük ölçekli bir sistemde GPU'ların verimli bir şekilde programlanması, yalnızca hesaplamalı bilim dalındaki insanlar için değil, aynı zamanda programlama uzmanları için de zorlu bir iştir çünkü bu işte GPU'ya özel kod üretilmeli, farklı bellekler yönetilmeli ve iletişim ele alınmalıdır. Bu gereksinimler üretkenliği azaltırken, uygulamanın taşınabilirliğini de sınırlar. Kod yönergeleriyle taşınabilirlik ve üretkenlik sunan OpenACC gibi direktif tabanlı programlama modelleri bulunmaktadır. Ancak bu modeller performansı iyileştirme amaçlı ayarlamalar gerektirir ve GPU'lu kümelenmiş sistemlerin programlanmasını desteklemezler. Kümelenmiş sistemlerde iletişimin verimli bir şekilde ele alınması gerekir. İletişimi ele alan ve GPU programlamayı kolaylaştırmak için iskelet tabanlı soyutlamalar sunan çalışmalar bulunmaktadır, ancak bu soyutlamalar programlamada yeterli esnekliği sağlayamazlar. Üstelik, literatürdeki çalışmaların çoğu, GPU'ları ana işlemciye bağlayan ara bağlantının bant genişliği kısıtını dikkate almamaktadır. Bazı görev tabanlı yaklaşımlar, bu kısıta çözüm olması amacıyla hesaplama ile örtüşen veri aktarımlarını kullanmaktadır fakat bu yaklaşımlarda programlayıcı GPU'ya özgü kodun yazılmasından ve görev zamanlamasından sorumludur. Programlama çabasını kolaylaştırmak, taşınabilirliği artırmak ve transferleri optimize etmek amacıyla GPU'lu kümelenmiş sistemlerde yürütülecek yapısal çözüm alanı problemleri için bloklamaya dayalı programlama modeli sunuyoruz. Model, üstü kapalı bir şekilde, TiDA ile veriyi ayrıştırır ve CUDA ile farklı bellekleri yönetir. CPU ve GPU'lar için tek tip bir arayüzün arkasında OpenACC'nin yönergelerinden yararlanarak otomatik bir şekilde GPU'ya has kod üretir. Ek olarak, veri aktarımlarını ve iletişimi yönetir ve bunları, CUDA akışları ve bloklamayan MPI rutinlerini kullanarak hesaplamalarla örtüştürür. Programlama modelinin etkinliğini bir ısı simülasyonu ve gerçek hayatta kullanılan bir kardiyak modellemesi üzerinde gösterdik. Sonuçlar, programlama modelinin iletişimi başarıyla örtüştürdüğünü ve iyi hızlanma sağladığını göstermektedir.

Yazar

Dr. Burak Bastem

Bu Yayına Nasıl Atıf Yapılır

Burak Bastem (Yüksek Lisans Tezi). Tiling-based programming model for GPU clusters targeting structured grids, 2019, Koç University.

Anahtar Kelimeler

Lisans

Tüm Hakları Saklıdır

Bu eser belirtilen lisans koşulları altında paylaşılmaktadır.

Koç University tezlerinden daha fazlası