Publication:
Towards equitable fault tolerance : error propagation characterization and dynamic resource allocation for resilient systems

Loading...
Thumbnail Image

Date

Journal Title

Journal ISSN

Volume Title

Publisher

Research Projects

Organizational Units

Journal Issue

Abstract

Modern sistemlerin çeşitli hata türlerine karşı artan savunmasızlığı, hata toleransını sistem mimarisi açısından kritik bir özellik haline getirmiştir. Geleneksel hata toleransı teknikleri genellikle sisteme ek yük getirse de, bu maliyet yalnızca uygulamaların ihtiyaç duyduğu kadar güvenilirlik sağlanarak azaltılabilir. Bu nedenle, uygulamaların güvenilirlik gereksinimlerinin belirlenmesi, hata toleransı kaynaklarının etkili bir şekilde kullanılması açısından büyük önem taşımaktadır. Bu tez, çeşitli uygulamaların hata yayılım karakteristiklerini analiz etmekte, yayılım eğrilerini yavaşlatacak teknikler sunmakta ve güvenilirlikte eşitlik sağlayacak dinamik bir güvenilirlik sistemi önermektedir. Bu çalışmanın ilk katkısı olarak, yazılım ve donanım seviyelerinde hata yayılımını karakterize etmek için iki hata yayılımı metriği önerilmiş ve değerlendirilmiştir. Kapsamlı deneysel analizlerimiz, veri yapıları üzerindeki hata yayılımının uygulama davranışına büyük ölçüde bağlı olduğunu ortaya koymaktadır. Bazı uygulamalar doğal olarak yüksek hata dayanıklılığı sergilerken, bazıları ise hataların varlığına rağmen kabul edilebilir sonuçlar üretebilmektedir. Bu bağlamda, meta-sezgisel algoritmalar prosedürel bileşenlerine ayrıştırılarak analiz edilmekte ve her bir bileşenin hata direnci ayrı ayrı değerlendirilmektedir. Deneysel sonuçlarımız, meta-sezgisel algoritmaların doğal bir hata direnci gösterdiğini ve hata direnci karakteristiklerinin prosedürel bileşenlere göre farklılık gösterdiğini ortaya koymaktadır. Ayrıca, bulgularımız veri yapılarındaki hata yayılımı ile önbelleklerdeki hata yayılımı arasında bir korelasyon olduğunu da ortaya koymaktadır. Tez kapsamında, hata yayılımını yavaşlatmak için düşük maliyetli yöntemler de önerilmektedir. Hata yayılımını yavaşlatmak için veri çoğaltma tekniğinden yararlanılmaktadır. Ayrıca, paralelleştirme tabanlı optimizasyonlar da hata yayılım eğrilerini yeniden şekillendirmek için kullanılmıştır. Yapılan deneyler, yöntemlerimizin yüksek performans ve bellek maliyeti oluşturmadan hata yayılım eğrilerini etkili bir şekilde yeniden şekillendirdiğini göstermektedir. Tezin son aşamasında, hata davranışını izleyen ve uygulamaların gereksinimlerine göre hata toleransı sağlayan, yenilikçi, eşitlik tabanlı dinamik bir güvenilirlik sistemi önerilmektedir. Önerilen sistem, gözlemlenen hata oranlarına bağlı olarak ECC korumalı önbellek bloklarını, eşzamanlı çalıştırılan uygulamalara dinamik olarak tahsis etmektedir. Bu yaklaşım, sistem kaynaklarına eşitlikçi erişim sağlayarak hiçbir uygulamanın diğer uygulamaları tek başına domine etmesine izin vermeden tüm uygulamaların sistem kaynaklarından faydalanmasını sağlar. Eşitlik, fiziksel, veri erişimi ve uygulama seviyelerinde tanımlanan özgün güvenilirlik metrikleri aracılığıyla hatanın gözlemlenmesi ile sağlanır. Güvenilirlikte eşitlik, her seviyede uygulamaların hata oranları arasında görülen maksimum fark olarak ölçülür. Yapılan deneysel çalışmalara göre sistemimiz, özellikle benzer seviyede hata direncine sahip olan uygulamalar göz önüne alındığında, eşitliği başarılı bir şekilde sağlamaktadır.
Increasing vulnerability of modern computing systems to various types of errors has elevated fault tolerance to a critical role in system architecture. Although conventional fault tolerance techniques typically incur additional overheads to the system, these costs can be reduced by provisioning only the level of reliability required by the applications. Therefore, quantifying the reliability requirements of applications is crucial for allocating fault tolerance resources. This thesis analyzes soft error propagation characteristics of various applications, presents techniques to slow down the propagation curves and proposes a dynamic reliability framework to provide fairness in reliability. As the first contribution, we propose and evaluate two error propagation metrics to characterize error propagation at both software and hardware levels. Our extensive experimental analysis demonstrates that error propagation over program data structures is highly dependent on application-specific behavior; some applications may inherently exhibit high error resilience, with some algorithms producing acceptable results despite the presence of soft errors. In this context, metaheuristic algorithms are analyzed by decomposing them into their procedural components and evaluating error resilience of each component individually. Our experimental results indicate that metaheuristics inherently exhibit error resilience and that their error resilience characteristics vary significantly across different procedures. Furthermore, our findings reveal a correlation between error propagation trends in program data structures and data caches. This thesis also presents relatively inexpensive methods to slow down the error propagation curves. We utilize data replication to slow down the error propagation. Furthermore, we utilize parallelization-based optimizations to reshape the propagation curves. The fault injection experiments reveal that our methods reshape the error propagation curves effectively without incurring high performance and memory overheads. In the final phase of the thesis, we propose a novel dynamic fairness-based reliability framework that monitors the error behavior and provides fault tolerance based on the requirements of applications. The proposed framework dynamically allocates ECC-protected cache blocks to the applications running simultaneously based on their error rates. It ensures equitable access to system resources, allowing all applications to benefit without any single one dominating them. This is accomplished by monitoring errors at the physical, data access, and application levels, each guided by a distinct reliability metric. Fairness in reliability is measured by the maximum difference in error rates of applications at each level. Based on empirical evaluations, our framework successfully enhances fairness, particularly in scenarios where applications exhibit comparable error resilience.

Description

Citation

Collections

Endorsement

Review

Supplemented By

Referenced By