Dağıtılmış nesnesel birim modeli ve paralel algoritmaları gerçekleme yöntemleri
- Global styles
- Apa
- Bibtex
- Chicago Fullnote
- Help
Abstract
DAĞITILMIŞ NESNESEL BİRİM MODELİ VE PARALEL ALGORİTMALARI GERÇEKLEME YÖNTEMLERİ ÖZET Günümüzde yoğun işlem yapan paralel çalışabilen uygulamalar çokluortam kavramının da gelişmesiyle gerçek zamanlı olmaya bir başka deyişle hızlı çalışmaya mecburdur. Tek işlemci kullanan sistemlerde kanşık uygulamaları çalıştırmak için hızlı donanıma ihtiyaç vardır. Günden güne kişisel bilgisayar donanım fiyatlarının da düşmesiyle, nispeten pahalı olan paralel makinelere yeni alternatifler bulunmalıdır. Yapılan çalışmada, paralel çalışabilen yoğun iş yüklü uygulamalar için hızlı donanım yerine, kişisel bilgisayarlardan oluşan yerel ve geniş ağlar üzerinde dağıtılmış yapı kullanılıyor. Görüntü İşleme ve Stereo Vision gibi algoritmalar karışık ve zaman alıcı yapıdadırlar. Hızlı çalışmayı sağlamak için, bu tür uygulamalar paralel çalışabilen farklı makinelerdeki nesnesel modüllere dağıtılmıştır. Kişisel bilgisayar sistemlerinde dağıtılmış ortamı sağlamak için Dağıtılmış Nesnesel Birim Modeli (DCOM - Distributed Component Object Model) yapısı kullanılmıştır. DCOM yapısının desteklediği paralel çalışmaya imkan veren kendine özel thread yapıları mevcuttur ve kendi spesifikasyonunda belirtilmiştir. Fakat uygulama bazında sorunları bulunmaktadır. Bu sebepten dolayı çalışmada sisteme özel thread nesne yapısı kullanılarak DCOM üzerine yeni bir paralel yapı adapte edilmiştir. Yapılan çalışmada, istemci ve sunucu tarafları olmak üzere iki taraf bulunur, istemci, ana programın çalıştığı ve nesnelerin uzaktan yaratıldığı taraftır, istemci paralel çalışmanın gerektirdiği işlemleri modüllere ayırır, bu modülleri uzakta bulunan sunucu nesnelerine atar ve sonuçlarını bekler. Alınan sonuçlar yine istemci tarafında gösterilir. Sunucu tarafı ise, paralel işlem modülünü içeren nesnelerin bulunduğu taraftır. Sunucu nesnelerin tümü aynıdır ve giriş parametrelerine göre verilen işlemleri yaparlar. Sunucu tarafındaki nesneler, istemci tarafından senkron olarak çalıştırılır. Çalıştırılan nesne metodu sunucu tarafında asenkron çalışabilen nesnesel thread yaratır. Thread nesnesi bitiminde sunucu nesnesine haber verilir ve sunucudaki ilgili alanlar güncellenir. İstemci yaptığı çağrılarla bu alanları geri çeker. İstemci ve sunucu sayılarına göre değişik modeller tanımlanmıştır. 'Tek istemci Çok Sunucu' modeli paralel uygulamalar için geliştirilmiş modeldir. Sunucular paralel nesne modüllerini ifade ederler. Bu modelde sadece istemci tarafından gönderilebilen kontrol amaçlı Tek taraflı Çağrılar ve sunucunun da sonucu göndermeye yönelik çağrı yapabildiği 'Çift Taraflı Çağrılar oluşturulabilir. Bu çağrı yöntemlerini kullanan 'Paralel Stereo Vision' algoritması tasarlanmış ve oluşturulan uygulamaların karşılaştırmalı çalışma süreleri çalışmada gösterilmiştir, ikinci bir model olan Tek Sunucu Çok istemci' modeli bahsedilmiştir. Sunucunun ortak alanını paylaşmak isteyen istemci çağrılarına ortak dışlama uygulanmıştır. Ortak dışlama tek sunucu makinesi üzerinde birden fazla nesne yaratılan 'Çift Taraflı Çağrı' yönteminde de kullanılmıştır. VIII DISTRIBUTED COMPONENT OBJECT MODEL AND METHODS OF IMPLEMENTING PARALLEL ALGORITHMS SUMMARY Nowadays, with the advance in multimedia area, applications which need intense resources must execute fast enough to reach run-time processing. For complex applications to run faster, a well equipped hardware is needed. Day by day, with the decrease of cost in personal computers, new alternatives must be found. In this study, a structure distributed over the network coupled with personal computers instead of computers with fast hardware is used for intense programs which can run in parallel. Image Processing and Stereo Vision Algorithms are generally complex and time consuming. For fast processing, this kind of algorithms is distributed parallely into object modules. DCOM (Distributed Component Object Model) is used to provide distributed environment in personal computers. DCOM specification states that DCOM support threading options for parallel processing. But in implementation phase, it has some problems. For this reason, in the study, system threads are used and adapted in a new designed parallel structure. In this study, there are two sides named as client and server sides. A client is a process that invokes an object's methods. Server contains running instance(s) of a dynamic link library or an executable, capable of creating and hosting object instances of one or more classes. It includes parallely designed objects. All objects code are the same and process according incoming parameters. Objects located at the server side are executed synchronously by client side. Invoked object method creates a thread object which runs asynchronously in the same server side. When the thread is terminated, it acknowledges the server object about the termination and assigns related fields. Client in ite turn, fetches these fields by making calls. There are different models according to the number of client and server used. 'One Client Multi Server1 is a model designed for parallelly processing applications. Servers define parallel object modulles. In this model, 'One Skied Call* method in which only client side can make the calls to the server side and 'Two Sided Call' or callback method in which both sides can make calls to the other side exist. A Parallel Stereo vision algorithm is designed using these methods and compared results of the written applications are shown in the study. The Second model is named as 'One Server Multi Client' in which calls made to server method access shared fields. The method employs mutually exclusion as it is used in Two Sided Calls'. IX
Collections