Geri Dön

Çok çekirdekli görev-kritik işlemciler için önbellek tasarımı ve gerçeklenmesi

Cache design and implementation for mission-criticalmulticore processors

  1. Tez No: 641143
  2. Yazar: MERT ATAMANER
  3. Danışmanlar: PROF. OĞUZ ERGİN
  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: 2020
  8. Dil: Türkçe
  9. Üniversite: TOBB Ekonomi ve Teknoloji Üniversitesi
  10. Enstitü: Fen Bilimleri Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Belirtilmemiş.
  13. Sayfa Sayısı: 80

Özet

Çok çekirdekli sistemlerde paralel çalı¸smaya ba˘glı olarak performansı optimize etmek için çekirdeklere özgü ilk düzey önbellekler ve payla¸sımlı üst düzey önbellekler bulunmaktadır. Çekirdeklere özgü önbelleklerin varlı˘gı kullanılan verilerin aynı adresteki veriler olmasına ba˘glı olarak tutarlılık sorununu olu¸sturmaktadır. Modern sistemler bu sorunu tutarlılık protokolleri kullanarak çözmektedir. Tutarlılık protokollerinden MESI ve MOESI, günümüz sistemlerinde en çok kullanılan protokollerdendir. Bu protokoller tutarlılık sorununu ba¸sarılı bir ¸sekilde çözmelerine kar¸sın farklı amaçlarla da sistemde kullanılabilmektedir. Tez kapsamında tutarlılık etiketleri kullanılarak hata düzeltimi yapılabilece˘gi gösterilmi¸stir. Çekirde˘ge özgü önbelleklerde hata oldu˘gu zaman hata düzeltme kodu kullanmak boru hattı ile iç içe olduklarından hız gereksinimini kar¸sılamamaktadır. Güncel i¸slemcilerde bu önbellekler e¸slik bitleriyle ve hata olu¸sunca sistemi geri alma yöntemiyle korunmaktadır. Önerilen mekanizma ise var olan tutarlılık altyapısının kullanılarak hataları hızlı bir ¸sekilde düzeltmeyi amaçlamaktadır. Payla¸sımlı tutarlılık etiketine sahip önbellek satırlarını takip eden dizin(ler) yardımıyla, hata olu¸san önbelleklerdeki verileri düzeltmek mümkündür. Yapılan çalı¸smalar ı¸sı˘gında bu mekanizma kullanılarak programların dörtte birine kadar kısmını koruma altına almak mümkündür ve bu mekanizmanın kullanılamayaca˘gı bir an neredeyse hiç olu¸smamaktadır. Hata düzeltiminin yanında, Yao vd., tutarlılık etiketlerinin güvenlik açı˘gı yarattı˘gını ortaya koymu¸stur [1]. Buna göre“S”ve“E”etiketlerine yapılan eri¸simlerin deterministik olarak ayrı¸stırılabilir olması, sistemde çalı¸san ajan ve truva atı uygulamalarının bir zamanla yan kanalı olu¸sturarak aralarında seri haberle¸smesini mümkün kılmaktadır. ˙Ileti¸sim, KSM(kernel same page merging)'nin çalı¸smasına ba˘glı olarak kullanılabilmektedir ve bu uygulamanın kullanılmaması performansı ciddi ölçüde etkilemektedir. Bu çalı¸sma, tutarlılık etiketi kullanılarak olu¸sturulacak yan kanalları engellemek için KSM'nin kapatılmasına gerek olmayan bir çözüm öne sürmektedir. Önbellek satırlarına arka arkaya gelen yükle buyruklarını takip ederek ileti¸sime gürültü ekleyen bu yöntem, gönderilen bitlerin %90'ını bozabilecek kapasitede iken, en kötü ko¸sullar altında yakla¸sık %15, en iyi durumda %2 yürütme zamanı ekleyerek programın performansını dü¸sürmektedir. [1] Yao, F., Doroslovacki, M., and Venkataramani, G. (2018). Are Coherence Protocol States Vulnerable to Information Leakage? In: IEEE International Symposium on High Performance Computer Architecture, HPCA 2018, Vienna, Austria, February 24-28, 2018. IEEE Computer Society, pp. 168–179.

Özet (Çeviri)

Mutlicore architecutres optimizes the performance and energy overhead by using private and shared caches in the memory hierarchy. Different cores having private caches introduces coherency problem in between different cores. Modern systems employ a coherence protocol scheme into the system to tackle this problem. Two of the most used protocols today are MOESI and MESI protocols. These protocols solve the coherency problem efficiently, however recently it was shown that these protocols can be exploited or used for different purposes. Thesis includes a such a scheme that uses MOESI labels for error correction. Private caches are closely connected to the pipeline and thus requires to be fast. Because of this fact, modern CPUs do not use ECC in private caches(L1). Instead, parity bits are checked for errors and if an error occurs systems crash or are reload to a safe state. Proposed mechanism suggests an alternative for using ECC while being fast enough for pipeline utilizing coherency labels. Shared labeled cache blocks imply that there is at least one other copy of the same data in another L1 cache, and it can be used to reload when a parity bit of such cache blocks imply error. In this thesis, it is shown that it is possible to protect a program during one fourth of its lifetime. Yao et al., reports that coherency protocols can also be exploited to create timing side channels. Since the accesses to shared and exclusive labeled cache blocks takes deterministically distinguishable time, it enables a spy-trojan pair to serially communicate by only measuring the access times to such cache blocks [1]. This communication is made possible by KSM(kernel same page merging) and disabling KSM incurs a significant performance loss. This work proposes a new scheme to prevent communicating through this side channel without the need of disabling KSM. Since the communication depends on back-to-back load operations, it is possible to track and monitor loads to the same cacheblock and introduce noise to the side channel. It is shown that it is possible to disrupt up to %90 of the communication while increasing the runtime %2 to %15. [1] Yao, F., Doroslovacki, M., and Venkataramani, G. (2018). Are Coherence Protocol States Vulnerable to Information Leakage? In: IEEE International Symposium on High Performance Computer Architecture, HPCA 2018, Vienna, Austria, February 24-28, 2018. IEEE Computer Society, pp. 168–179.

Benzer Tezler

  1. ComCoS: An enhanced cache partitioning technique for integrated modular avionics

    ComCoS: Entegre modüler aviyonikler için gelişmiş bir önbellek bölümleme tekniği

    YAKUP HÜNER

    Yüksek Lisans

    İngilizce

    İngilizce

    2023

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

    Savunma Teknolojileri Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ RAMAZAN YENİÇERİ

  2. Çok çekirdekli sistemlerin veri önbellekleri için geçici hataların modellenmesi

    Modeling soft errors for data caches in chip multiprocessor systems

    SELÇUK KOYUNCU

    Yüksek Lisans

    Türkçe

    Türkçe

    2009

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolÇanakkale Onsekiz Mart Üniversitesi

    Bilgisayar Mühendisliği Ana Bilim Dalı

    YRD. DOÇ. DR. İSMAİL KADAYIF

  3. Multi-scheduling technique for real-time systems on embedded multi-core processors

    Çok çekirdekli gömülü işlemciler üzerinde gerçek zamanlı sistemler için çoklu görev zamanlayıcı tekniği

    ABDULKADİR YAŞAR

    Yüksek Lisans

    İngilizce

    İngilizce

    2014

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

    Bilgisayar Mühendisliği Ana Bilim Dalı

    YRD. DOÇ. DR. KAYHAN M. İMRE

  4. Çok çekirdekli mimari üzerinde gerçek zamanlı görev zamanlama ve iletişim yönetim algoritmalarının birlikte tasarımı

    Design of real-time scheduling and communication management algorithms on multicore architecture

    HÜSEYİN TEMUÇİN

    Doktora

    Türkçe

    Türkçe

    2018

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

    Bilgisayar Mühendisliği Ana Bilim Dalı

    DOÇ. DR. KAYHAN MUSTAFA İMRE

  5. Designing a fast direct sparse matrix solver for multi-core distributed systems

    Çok çekirdekli dağıtık sistemler için hızlı doğrudan seyrek matris çözücü tasarlanması

    MEHMET TUNÇEL

    Yüksek Lisans

    İngilizce

    İngilizce

    2013

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

    Hesaplamalı Bilimler ve Mühendislik Ana Bilim Dalı

    PROF. DR. MUSTAFA SERDAR ÇELEBİ