One Flag to Rule Them All? On the Quest for Compiler Optimizations to Improve Fault Tolerance

Publikation: Beitrag in Buch/Konferenzbericht/Sammelband/GutachtenBeitrag in KonferenzbandBeigetragenBegutachtung

Beitragende

Abstract

Soft errors pose a threat to all types of software-controlled electronic devices and can result in silent data corruptions (SDCs). Compiler optimizations usually target program execution time or memory footprint. They are oblivious of the fault tolerance of the resulting code, yet they might still be beneficial in this regard. However, it is non-trivial to pick a SDC-minimizing subset from the plethora of compiler flags for an individual program. Ideally, a developer could collectively enable reliability-improving optimizations with a single compiler flag.In this paper, we analyze the impact of compiler optimizations on the occurrence of SDCs. We consider nearly all GCC optimizations on x86 under CPU-register faults. We show that the same compiler optimizations can have a positive or negative effect depending on the target program. We search for a beneficial flag combination using a genetic algorithm, accelerated by a machine-learning based SDC predictor. Our findings suggest that while this leads to an improvement over -O0 of 7.1%, -O3 is a good default alternative.

Details

OriginalspracheEnglisch
TitelProceedings - 2024 19th European Dependable Computing Conference, EDCC 2024
Herausgeber (Verlag)IEEE
Seiten33-40
Seitenumfang8
ISBN (Print)979-8-3503-6069-1
PublikationsstatusVeröffentlicht - 11 Apr. 2024
Peer-Review-StatusJa

Konferenz

Titel2024 19th European Dependable Computing Conference
KurztitelEDCC 2014
Veranstaltungsnummer19
Dauer8 - 11 April 2024
Webseite
BekanntheitsgradInternationale Veranstaltung
OrtKU Leuven
StadtLeuven
LandBelgien

Externe IDs

ORCID /0000-0002-1427-9343/work/160953549
Scopus 85194878322
Mendeley c3fd1d09-e52f-3844-a93b-892ce32a176e

Schlagworte

Schlagwörter

  • Fault tolerance, Program processors, Codes, Fault tolerant systems, Europe, Machine learning, Optimization, fault tolerance, soft error, random forests, genetic algorithm, compiler optimizations, silent data corruption