Please use this identifier to cite or link to this item: https://hdl.handle.net/20.500.11851/3950
Title: Çok çekirdekli görev-kritik işlemciler için önbellek tasarımı ve gerçeklenmesi
Other Titles: Cache design and implementation for mission-criticalmulticore processors
Authors: Atamaner, Mert
Advisors: Ergin, Oğuz
Keywords: Çok çekirdekli işlemciler
Önbellek
Tutarlılık protokolleri
Hata toleransı
Hata düzeltici kodlar
Güvenilirlik
Güvenlik
Önbellek yan kanalları
Gem5
Multi core processors
Cache
Coherency protocols
Error tolerance
Error correcting codes
Reliability
Security
Cache Side channels
Publisher: TOBB ETÜ Fen Bilimleri Enstitüsü
Source: Atamaner, M. (2020).Çok çekirdekli görev-kritik işlemciler için önbellek tasarımı ve gerçeklenmesi. Ankara: TOBB ETÜ Fen Bilimleri Enstitüsü. [Yayınlanmamış yüksek lisans tezi]
Abstract: Ç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.
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.
URI: http://hdl.handle.net/20.500.11851/3950
Appears in Collections:Bilgisayar Mühendisliği Yüksek Lisans Tezleri / Computer Engineering Master Theses

Files in This Item:
File Description SizeFormat 
641143 (1).pdfMert Atamaner_Tez3.62 MBAdobe PDFThumbnail
View/Open
Show full item record



CORE Recommender

Page view(s)

212
checked on Mar 25, 2024

Download(s)

80
checked on Mar 25, 2024

Google ScholarTM

Check





Items in GCRIS Repository are protected by copyright, with all rights reserved, unless otherwise indicated.