Data placement on heterogeneous memory architectures
2018
0 views
0 downloads
Advisor: Yrd. Doç. Dr. Didem Unat
Abstract (TR)
Bellek bant genişliği, yüksek performanslı uygulamalar için performans artırmada sınırlayıcı bir faktör olmuştur. Bu sınırlamanın üstesinden gelmek için çeşitli heterojen bellek sistemleri ortaya çıkmıştır. Heterojen bir bellek sistemi her biri farklı özelliklere sahip olan birden fazla bellekten oluşur. Bu bellek sistemleri çeşitlilik gösterseler de ortak bir özelliğe sahiptirler. Bu özellik sistemdeki diğer belleklere kıyasla daha yüksek bant genişliğine sahip bir belleğin içerilmesidir. Bu özel bellek ise genelde yüksek bant genişliği belleği (HBM) olarak bilinir. HBM teknolojilerinden bazıları, Micron'un hibrid bellek küpünü (HMC) ve JEDEC'in yüksek bant genişliği bellek standardını içerir. Intel'in en yeni Xeon Phi işlemcisi Intel Knights Landing (KNL), DDR ile birlikte çok kanallı DRAM veya MCDRAM olarak da bilinen bir HBM ile donatılmıştır. DDR'de bant genişliği 88 GB/s iken, MCDRAM'de bu rakam 450 GB/s'dir. Ancak, bant genişliği arttıkça, MCDRAM için gecikme süresi artar. Buna ek olarak, teknolojik kısıtlardan ve bayt başına yüksek fiyattan dolayı HBM, heterojen bellek sistemlerinde geleneksel DDR'ye kıyasla küçük bir kapasitede sunulmaktadır. HBM'nin bu kapasite kısıtının üstesinden gelmek için, heterojen bellek sistemleri daha yüksek kapasiteli bir DDR ile donatılmıştır. Bu tür sistemlerde, programcı her belleğe özel ayırma yapabilir veya donanım HBM'yi önbellek olarak kullanabilir. Akıllı bir nesne yerleştirme şeması, uygulamalarda performans artışı sağlayabilir. Bunun aksine, bellek ve uygulamaların özelliklerini dikkate almadan yerleştirme yapılırsa, uygulamaların genel performansı büyük ölçüde düşebilir. Nesne yerleştirme seçimi ve buna ek olarak sistem konfigürasyonuna karar verme seçimi, programlayıcı için fazladan sorumluluk oluşturur. Bu sorumluluk da artan programlama çabası ve zaman tüketimine neden olur. Bu tez, sistem ve uygulamaya özel maliyet modeline dayanan bir nesne yerleştirme şemasını, genellikle 0/1 Knapsack olarak bilinen bir kombinatorik optimizasyon algoritmasını ve bu ikisini pratikte birleştiren bir aracı sunmaktadır. Maliyet modeli nesne boyutları, bellek erişim sayıları, erişim türü, ve bunun gibi çeşitli uygulama özelliklerini göz önünde bulundurmaktadır. Uygulama karakteristiğine ek olarak, maliyet modeli, veri akış bant genişliği ve veri kopyalama bant genişliği de dahil olmak üzere çeşitli açılardan bellek bant genişliğini de dikkate almaktadır. Bu özellikler, akıllı bir nesne yerleştirme şeması önermeye yarayan maliyet modelimizin içeriğini zenginleştirmektedir. Belirtilen özellikleri kullanarak, maliyet modeli her nesne için bir skor belirler. Bu skorlar, her bir nesnenin Knapsack algoritmasındaki boyutunu ifade eder. Knapsack boyutu olarak ise HBM'nin boyutu kullanılır. Araç, nesne yerleştirmede akıllı bir karar vermek için maliyet modelini kullanır ve iki farklı yerleştirme yapabilir: 1) nesnelerin yerleşiminin en başta yapıldığı statik yerleştirme ve 2) nesnelerin transferine neden olan, uygulamanın fazlarına dayalı olarak HBM'ye aktarma veya HBM'den çıkarma yapılan dinamik yerleştirme. Dinamik yerleştirmede, maliyet modeli, HBM'ye yerleştirilecek nesnelere karar verirken, nesnelerin bir bellekten diğer belleğe olan transferinin maliyetini göz önünde bulundurur. Ayrıca araç, nesneleri eşzamansız transfer etme yeteneğine sahiptir. Eşzamansız transferler, aracın transfer maliyetini uygulamanın fazları arasında gizlemesine olanak sağlar. Yerleştirme şemamızı, NAS Paralel ve Rodinia karşılaştırmalı değerlendirme paketlerinden alınan bir dizi uygulama üzerinde test ettik. Kullanılan uygulamalar, pratikte kullanılan uygulamalarının özelliklerini sergileyen, değişken iş yüklerine ve bellek erişim modellerine sahiptirler. Değerlendirme için Intel'in Knights Landing işlemcisini ve yüksek bant genişliği belleği olan MCDRAM'yi kullanıldık. Geliştirdiğimiz araç tarafından önerilen nesne şeması, 2,5 kata kadar bir hızlanma sağladı. Gecikme süresine duyarlı uygulamaların yüksek bant genişliğine sahip bellek yerleşiminden yararlanamadıklarını da gözlemledik. Bunun nedeni, HBM'nin daha yüksek gecikme süresine neden olmasıdır. Ayrıca, sonuçları Intel KNL'nin otomatik donanım önbelleği ile de karşılaştırdık. Donanım modunda, uygulama, herhangi bir değişiklik yapılmadan yürütüldü ve donanım tarafından otomatik olarak önbelleğe alma işlemi yapıldı. Yerleştirme şemamızın, çoğu zaman otomatik donanım önbelleğinden daha iyi sonuç verdiğini gözlemledik.
Author
Dr. Mohammad Lagharı
Institution
How to Cite
Mohammad Lagharı (Yüksek Lisans Tezi). Data placement on heterogeneous memory architectures, 2018, Koç University.
Keywords
License
Tüm Hakları Saklıdır
This work is shared under the specified license terms.
More theses from Koç University
- International marketing strategies of Ekom-Eczacıbaşı in the Russian market(1995)
- The Balkans in an Age of Baroque transformations in architecture, decoration, and patterns of patronage ad cultural production in Ottoman Europe, 1718-1856(2006)
- Single machine scheduling with timelag constraints(2014)
- Ottoman olfactory traditions in a palatial space: Incense burners in The Topkapi Palace(2015)
- The connectedness of the Rum Seljuks and the Kingdom of Georgia: A framework for artistic exchance in the thirteenth century(2015)
- Turkish coffee fortune-telling ritual as a source of inspiration for designing object-mediated advice interactions(2017)
