Dıstrıbuted Opencl - Opencl Platformunun Ağ Ölçeğinde Dağıtılması

dc.contributor.advisor Altılar, Deniz Turgay tr_TR
dc.contributor.author Eskikaya, Barış tr_TR
dc.contributor.authorID 436846 tr_TR
dc.contributor.department Bilgisayar Mühendisliği tr_TR
dc.contributor.department Computer Engineering en_US
dc.date 2012 tr_TR
dc.date.accessioned 2012-07-12 tr_TR
dc.date.accessioned 2015-04-07T13:59:38Z
dc.date.available 2015-04-07T13:59:38Z
dc.date.issued 2012-07-24 tr_TR
dc.description Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 2012 tr_TR
dc.description Thesis (M.Sc.) -- İstanbul Technical University, Institute of Science and Technology, 2012 en_US
dc.description.abstract Grafik kartları, yapısındaki çok çekirdeklilik ve işlem hattı mimarisi sayesinde yüksek miktardaki bağımlı olmayan verileri paralel olarak hızlı bir şekilde işleyebilme yeteneğine sahiptir. Ekran kartlarının bu özelliğinden bilimsel hesaplamalar, benzetim uygulamaları, işaret işleme uygulamaları gibi alanlarda da yararlanabilmek amacıyla grafik işlem birimi üzerinde genel amaçlı programlama (GPGPU) kavramı ortaya çıkmıştır. OpenCL, son zamanlarda yaygın olarak kullanılmaya başlayan bir GPGPU çatısıdır. OpenCL, çeşitli üreticilere ait çeşitli modellerdeki CPU ve GPU aygıtlarının bulunduğu heterojen ortamlarda çalışan ve aygıtlar arasında taşınabilir programlar yazmayı mümkün kılmaktadır. Üreticiler tarafından kabul edilen ortak OpenCL standartları sayesinde hem programcılar aygıtlara özel teknik detaylardan soyutlanmakta hem de platform ve aygıt özelliklerinden bağımsız programlar yazılabilmektedir. Bu nedenle OpenCL, önde gelen üreticiler tarafından desteklenen ve giderek daha yaygın olarak kullanılan bir GPGPU çatısı haline gelmektedir. Bu tez çalışmasında; tek bir bilgisayarın kaynaklarını kullanarak çalışan OpenCL çatısını, JSON-RPC iletişim tekniği kullanarak ağ ölçeğinde dağıtılmış olan birçok bilgisayardaki kaynakları paralel olarak kullanabilecek hale getiren Distributed OpenCL (Dağıtılmış OpenCL) çatısı geliştirilmiştir. Geliştirilen bu yeni yapı ile OpenCL çatısının birçok bilgisayardaki GPU veya CPU kaynaklarının aynı işlem üzerinde paralel olarak çalışıp aygıt başına düşen işlem yükünü azaltarak genel hesaplama performansını arttıracak ve aynı zamanda aygıt, üretici ve işletim sisteminden bağımsız olarak çalışacak şekilde genişletilmesi amaçlanmıştır. Geliştirilen yapı istemci – sunucu mimarisinde çalışan bir sistemdir. İstemci, dağıtım katmanı ve sunucu bileşenlerinden oluşmaktadır. İstemcilerde çalışan ev sahibi programların yaptığı OpenCL API çağrıları yine istemcide çalışan dağıtım katmanı tarafından yakalanmakta, OpenCL çağrıları, çağrılara ait parametrelerle birlikte JSON mesajlarına çevrilmekte ve sistemdeki sunuculara JSON – RPC protokolü kullanılarak iletilmektedir. Sunucu, kendisine gelen mesajları dinlemekte, bir mesaj geldiğinde JSON formatındaki mesaj içeriğini ayıklayarak ilgili OpenCL çağrısını verilen parametrelere birlikte işletmekte, dönen sonuç parametrelerini yine JSON mesajı haline getirerek istemciye cevap olarak iletmektedir. Mesaj cevabını alan istemcideki dağıtım katmanı, dönüş değerlerini OpenCL çağrısının işlevini göz önünde bulundurarak ev sahibi programa döndürmektedir. Geliştirilen bu yeni yapı üzerinde Doğal OpenCL (Native OpenCL) ile karşılaştırmalı olarak bazı testler yapılmıştır. Bu testler ek yük testleri, paralel yürütme testleri ve çekirdek döngüsü testleri olarak sınıflandırılmaktadır. Ek yük testlerinde Native OpenCL ile Distributed OpenCL’de sunucu ve istemcinin aynı bilgisayarda çalışması, sunucu ve işlemcinin farklı bilgisayarlarda çalışması durumlarındaki performans karşılaştırılmıştır. Paralel yük testlerinde Distributed OpenCL’in bir istemci – bir sunucu, bir istemci – iki sunucu, bir istemci – dört sunucu şeklinde çalışması gözlemlenmiştir. Çekirdek döngüsü testlerinde hesap yoğun bir çekirdek fonksiyonu benzetimi yapılarak bu durumda sistemler arasındaki performans farkı ölçülmüştür. Testler sonucunda Distributed OpenCL çatısının özellikle düşük gecikmeli – yüksek hızlı ağlar ve çoklu GPU barındırabilen aygıtlar ile birlikte kullanıldığında; üretici – işletim sistemi bağımsız, dağıtık, paralel çalışan ve ölçeklenebilir yapıya sahip bir GPGPU hesaplama ortamı sağlayabileceği görülmüştür. tr_TR
dc.description.abstract This paper presents a framework that extends OpenCL by distributing computing process to many computing resources connected via network and enables the computing resources to run in parallel. Using JSON RPC (Remote Procedure Call technique relying on JavaScript Object Notation) in communication layer, Distributed OpenCL framework provides platform and operating system independency. Using this framework, a host program executed on a computer that has no OpenCL support is able to use other computing resources distributed on network in parallel. Results show that OpenCL platform model can be extended to network scale to provide a vendor, architecture and operating system independent and a parallel computing environment with reasonable communication overhead. en_US
dc.description.degree Yüksek Lisans tr_TR
dc.description.degree M.Sc. en_US
dc.identifier.uri http://hdl.handle.net/11527/403
dc.publisher Fen Bilimleri Enstitüsü tr_TR
dc.publisher Institute of Science and Technology en_US
dc.rights İTÜ tezleri telif hakkı ile korunmaktadır. Bunlar, bu kaynak üzerinden herhangi bir amaçla görüntülenebilir, ancak yazılı izin alınmadan herhangi bir biçimde yeniden oluşturulması veya dağıtılması yasaklanmıştır. tr_TR
dc.rights İTÜ theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. en_US
dc.subject OpenCL tr_TR
dc.subject Grafik İşlem Birimleri Üzerinde Genel Amaçlı Hesaplama tr_TR
dc.subject Grafik İşlem Birimi Kümeleri tr_TR
dc.subject OpenCL en_US
dc.subject GPU en_US
dc.subject GPGPU en_US
dc.subject HPC en_US
dc.subject GPU clusters en_US
dc.title Dıstrıbuted Opencl - Opencl Platformunun Ağ Ölçeğinde Dağıtılması tr_TR
dc.title.alternative Distributed Opencl - Distributing Opencl Platform On Network Scale en_US
dc.type Thesis en_US
dc.type Tez tr_TR
Dosyalar
Orijinal seri
Şimdi gösteriliyor 1 - 1 / 1
thumbnail.default.placeholder
Ad:
12864.pdf
Boyut:
993.86 KB
Format:
Adobe Portable Document Format
Açıklama
Lisanslı seri
Şimdi gösteriliyor 1 - 1 / 1
thumbnail.default.placeholder
Ad:
license.txt
Boyut:
3.14 KB
Format:
Plain Text
Açıklama