English

Leveraging the Potential of Control-Flow Error Resilient Techniques in Multithreaded Programs

Programming Languages 2016-07-27 v1

Abstract

This paper presents a software-based technique to recover control-flow errors in multithreaded programs. Control-flow error recovery is achieved through inserting additional instructions into multithreaded program at compile time regarding to two dependency graphs. These graphs are extracted to model control-flow and data dependencies among basic blocks and thread interactions between different threads of a program. In order to evaluate the proposed technique, three multithreaded benchmarks quick sort, matrix multiplication and linked list utilized to run on a multi-core processor, and a total of 5000 transient faults has been injected into several executable points of each program. The results show that this technique detects and corrects between 91.9% and 93.8% of the injected faults with acceptable performance and memory overheads.

Keywords

Cite

@article{arxiv.1607.07727,
  title  = {Leveraging the Potential of Control-Flow Error Resilient Techniques in Multithreaded Programs},
  author = {Navid Khoshavi and Mohammad Maghsoudloo and Hamid R. Zarandi},
  journal= {arXiv preprint arXiv:1607.07727},
  year   = {2016}
}
R2 v1 2026-06-22T15:04:34.508Z