Dynamic memory scheduling to enhance processing performance


Tezin Türü: Yüksek Lisans

Tezin Yürütüldüğü Kurum: Galatasaray Üniversitesi, Mühendislik ve Teknoloji Fakültesi, Bilgisayar Mühendisligi, Türkiye

Tezin Onay Tarihi: 2009

Tezin Dili: İngilizce

Öğrenci: MUTLU ERCAN

Danışman: TANKUT ACARMAN

Açık Arşiv Koleksiyonu: AVESİS Açık Erişim Koleksiyonu

Özet:

Günümüzde artan kullanıcı ve sistem ihtiyaçları doğrultusunda daha güçlü sistemlere ihtiyaç duyulmaktadır. Artan donanım hızlarına rağmen yazılım tarafından desteklenmeyen sistemlerde performans sorunları ortaya çıkabilmektedir. Uygulama katmamnında bu amaç doğrultusunda bazı çalışmalar sürekli olarak yapılmaktadır. Bu çalışmada, dinamik hafıza planlaması ile sistem performansını arttırmanın yollarını araştırıldı.Sigorta sektörü gibi bazı sektörlerde prim ve kazanç hesaplamaları için yoğun aktueryal hesaplamalar yapılmaktadır. Bu hesaplamaları yapan programlarda da, her ne kadar farklı girdi değerleri ile işlemler yapılsa da, sistemin alt katmanlarında bazı işlerin sürekli olarak tekrarlandığı görülebilmektedir. Her işlem esnasında bütün hesaplamaların baştan yapılmasındansa, çok tekrar gören işlerin sonuçlarını sistemin performansını düşürmeden hafızada tutmanın faydaları araştırılmıştır.Sistem işlerini de I/O işi ve hesap işi olarak sınıflandırabiliriz. I/O işlerine dış depolama aygıtları üzerinde yapılan işleri örnek olarak verebiliriz. Hesap işleri ise aynı girdi değerleri ile daima aynı çıktıları üreten işlerdir. Çalışmamızda hesap işlerinin tekrarlandıkları durumda tekrar tekrar işlemek yerine çıktı değerlerini bellekte tutmanın avantajları incelenmiştir.Bellekte tutma işlemi için durağan bir yapı yerine dinamik olarak bellekten daha fazla faydalanmanın yolları araştırılmıştır. Elde edilen teorik sonuçların gerçek uygulamalar üzerindeki etkisi gözlemlenmiştir.Öncelikle sanal veri setleri üzerinde algoritma denendi. 10 tane iş, normal dağılım ile rastgele olarak 10000 iş oluşturacak şekilde dizildi. Herbir iş için rastgele çıktı büyüklüğü ve servis hızı seçildi. Farklı büyüklükteki hafıza durumları için bu işler tekrarlandı. İş sayısı 100'e kadar onar onar arttırılarak sonuçlar gözlemlendi. Elde edilen kazançlar, öğrenme algoritması uygulanmadığı takdirde elde edilebilecek kazançlar ile karşılaştırıldı.Daha sonra bu sonuçlar ışığında bir bireysel emeklilik şirketinin, hayat sigortası ürünleri için prim hesaplayan, bireysel emeklilik ürünleri için de birikim projeksiyonu yapan ?Zaman Makinası? adındaki, Java altyapısı ile yazılmış uygulamasının çalışma istatistiklerinden oluşan gerçek data üzerinde çalıştırılarak, öğrenme algoritması uygulanmadığı takdirde oluşan sonuç ile sınızsız hafızaya sahip olunması durumunda elde edilebilecek sonuçlar ile karşılaştırıldı. Bireysel emeklilik şirketinden alınan data, doğrusal bir fonksiyon vasıtasıyla bozulmuştur.Bu çalışmada temel olarak çoğu zaman boşta kalan hafıza tekrarlayan işler için, çıktı değerlerini tutmak üzere kullanılması incelenmiştir. Dataların hafızada tutulması işlemi tasarım modeli olarak kullanılmakta olan bir yapıdır. Bu modelin işler için de kullanılabilirliği araştırılmıştır. İş tekrarlı yapılarda, uygun iş seçimi için eklenen öğrenme algoritması ile birlikte sonuçları gözlemlenmiştir.