Geri Dön

Java garbage collector selection using object oriented software metrics

Nesne yönelimli yazılım ölçütleri ile java atık bellek toplayıcı seçimi

  1. Tez No: 486582
  2. Yazar: GENCAY SAZAK
  3. Danışmanlar: YRD. DOÇ. DR. TOLGA OVATMAN
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2017
  8. Dil: İngilizce
  9. Üniversite: İstanbul Teknik Üniversitesi
  10. Enstitü: Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Bilgisayar Mühendisliği Bilim Dalı
  13. Sayfa Sayısı: 99

Özet

Java programlama dilinde otomatik bellek yönetimi yapılmaktadır. Bellek yönetimi, atık bellek toplayıcı tarafından yapılmakta ve program tarafından kullanılmayan nesneler bellekten kaldırılmaktadır. Bu çalışmada, program özellikleri ile atık bellek toplayıcı performansı arasında bir ilişki olduğu iddia edilmektedir. Bu ilişkinin tespit edilerek, program analizi ile bu programda iyi performans verecek atık bellek toplayıcının tahmin edilebileceği düşünülmektedir. Tahmin fonksiyonu, karar ağacı öğrenen makine öğrenmesi sistemleri ile oluşturulabilir. Sistemi beslemek içinse öncelikle eğitim verisinin oluşturulması gerekmektedir. Programlar, farklı atık bellek toplayıcılar ile test edilerek atık bellek toplayıcıların performansı incelenmelidir. Ardından, programların özellikleri çıkarılarak, performans verisi ile birleştirilip eğitim verisi oluşturulabilir. Çalışmayı yapmak için DaCapo performans test seti seçilmiştir. Programlar analiz edilerek özellikleri tespit edilmiştir. Chidamber ve Kemerer ölçütlerini de içeren birçok ölçüt sabit özellik olarak seçilmiştir. Dinamik özellik olarak: Java standart kütüphanesi harici sınıf nesnelerinin oluşturulma oranı, dizi oluşturma oranı, karakter dizisi oluşturma oranı, bağlı liste oluşturma oranı seçilmiştir. Özelliklerin tespiti sonucunda test programlarının farklı karakteristiklere sahip olduğu görülmüştür. Oluşturulan eğitim verisini işlemek için Weka makine öğrenmesi programı kullanılmıştır. Eğitim verisi, bir C4.5 karar ağacı gerçeklemesi olan J48 karar ağacı öğrenmesi ile kullanılmıştır. Oluşturulan karar ağacı %76,85 başarılı sınıflandırma oranına sahiptir. Çalışma sonunda program özellikleri ile atık bellek toplayıcı performansı arasında ilişki olduğu gösterilmiştir. Bu ilişkiyi formüle ederek atık bellek toplayıcı performansını tahmin edecek bir sistem önerilmiştir. Önerilen sistem verilen sonuçları sınıflandırabilmiştir. Gelecek çalışmalarda daha geniş bir program örneklemi ve özellik seti seçilerek başarı düzeyinin artırılabileceği düşünülmektedir.

Özet (Çeviri)

Java programming language introduces garbage collection to manage memory automatically. In this thesis, it is proposed that there should be a relation between garbage collector performance and program properties. It is also proposed that this relation can be exploited and good performing garbage collector for a program can be predicted by analyzing program. Predictor function can be constructed by using a machine learning system which creates a decision tree. Training data is needed to feed such system. Programs can be tested with different garbage collectors. After that program property data can be merged to garbage collector performance data to produce training data. The DaCapo Benchmark Suite is chosen for work. Benchmark programs are analyzed both statically and dynamically. Metrics including Chidamber and Kemerer metrics are extracted as static properties and also object allocation metrics extracted as dynamic properties through a single program execution. Program properties mentioned constructed training data with garbage collector results. Weka machine learning tool is used to build a decision tree. J48, which is an implementation of C4.5 algorithm is used to build a decision tree. Decision tree's success rate is measured as 76.85%. With this work, relation between program properties and garbage collection performance is shown. Using this relation a predictor system is proposed. This system had been able to classify instances correctly. In future research, it is possible to obtain better results with extended set of sample programs and program properties.

Benzer Tezler

  1. Java virtual machine design and implementation

    Java sanal makina tasarımı ve geliştirilmesi

    AHMET KARAKAYA

    Yüksek Lisans

    İngilizce

    İngilizce

    2008

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolMarmara Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. M. AKİF EYLER

  2. Genetik algoritmaların optimal güzergah belirlenmesine uygulanması

    Optimal genetic algorithms determining the implementation of route

    İSMAİL KAYA

    Yüksek Lisans

    Türkçe

    Türkçe

    2012

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolHaliç Üniversitesi

    Bilgisayar ve Bilişim Mühendisliği Ana Bilim Dalı

    YRD. DOÇ. DR. ULVİYE HACIYEVA

  3. 'Java Bean'leri ve bir veritabanına erişim uygulaması

    'Java Beans' and a database access application

    E. ESRA ATALAY

    Yüksek Lisans

    Türkçe

    Türkçe

    1999

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    PROF. DR. A. EMRE HARMANCI

  4. Java eğitimi araştırması

    Research on java education

    TURHAN GANİZ

    Yüksek Lisans

    Türkçe

    Türkçe

    1999

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolMarmara Üniversitesi

    Bilgisayar Kontrol Eğitimi Bilim Dalı

    PROF. DR. SEZGİN ALSAN