Show simple item record

dc.contributor.advisorAktemur, Tankut Barış
dc.contributor.authorYilmaz, Buse
dc.date.accessioned2020-12-06T14:16:15Z
dc.date.available2020-12-06T14:16:15Z
dc.date.submitted2015
dc.date.issued2018-08-06
dc.identifier.urihttps://acikbilim.yok.gov.tr/handle/20.500.12812/103605
dc.description.abstractKoşut zamanda özelleştirme, sadece koşut zamanda belli olan kısmi veriye dayanarak programları optimize etmek için kullanılan bir yöntemdir. Bu tezde, seyrek matris-vektör çarpımı¸ için hızlı bir şekilde koşut zamanda özelleştirme yapma amacına yönelik bir derleyici sunuyoruz. Seyrek matris-vektör çarpımı için ceşitli özelleştirme metodları vardır; en iyi yöntemin hangisi olduğu hem matris hem de donanım mimarisine bağlıdır. Özelleştirme yöntemlerinin tümünü kullanarak kod üretmekten kaçınmak için, otomatik ayarlama yaklaşımı kullanarak, girdi olarak verilen matris için en iyi özelleştiriciyi tahmin eden bir yöntem oluşturduk. Otomatik ayarlama yapabilmek için bir matris özellikleri kümesi tanımladık. Bu özelliklerin pek çoğu bizim çalışmamıza özgüdür. Sistemimizi iki ayrı makina uzerinde test ettik ve yaklaşımımız en iyi veya en iyi ikinci özelleştirme metodunu %91-96 oranında başarıyla tahmin edebilmektedir. Otomatik ayarlamayla yapılan tahminlerimiz, yalnızca en iyi metodlar kullanıldığında elde edilen hızlanmaya çok¸ yakın hızlanmalar elde etmektedir. Verimli bir kod üreticisi ve dikkatlice oluşturulmuş bir matris özellikleri kümesi kullanarak, otomatik ayarlama ve özelleştirme süreçlerinin toplam koşut zaman masraflarının amortize edilebildiğini ve birçok gerçek-dünya matrisi için performans iyileştirmesi sağlanabileceğini gösterdik.
dc.description.abstractRuntime specialization is used for optimizing programs based on partial information available only at runtime. In this thesis, we present a purpose-built compiler to quickly specialize Sparse Matrix-Vector Multiplication code for a particular matrix at runtime. There are several specialization methods and the best one depends both on the matrix and the platform. To avoid having to generate all the specialization variations, we use an autotuning approach to predict the best specializer for a given matrix. To this end, we define a set of matrix features for autotuning. Several of these features are unique to our work.We evaluate our system on two machines and show that our approach predicts either the best or the second best method in 91-96/% of the matrices. Predictions achieve average speedups that are very close to thespeedups achievable when only the best methods are used. By using an efficient code generator and a carefully designed set of matrix features, we show the total runtime costs of autotuning and specialization can be amortized to bring performance benefits for many real-world cases.en_US
dc.languageEnglish
dc.language.isoen
dc.rightsinfo:eu-repo/semantics/openAccess
dc.rightsAttribution 4.0 United Statestr_TR
dc.rights.urihttps://creativecommons.org/licenses/by/4.0/
dc.subjectBilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontroltr_TR
dc.subjectComputer Engineering and Computer Science and Controlen_US
dc.titleRuntime specialization and autotuning of sparse matrix-vector multiplication
dc.title.alternativeSeyrek matrıs-vektör çarpımının koşut zamanda özelleştirilmesı ve otomatık ayarlanması
dc.typedoctoralThesis
dc.date.updated2018-08-06
dc.contributor.departmentBilgisayar Mühendisliği Anabilim Dalı
dc.identifier.yokid10097200
dc.publisher.instituteFen Bilimleri Enstitüsü
dc.publisher.universityÖZYEĞİN ÜNİVERSİTESİ
dc.identifier.thesisid418526
dc.description.pages117
dc.publisher.disciplineDiğer


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record

info:eu-repo/semantics/openAccess
Except where otherwise noted, this item's license is described as info:eu-repo/semantics/openAccess