Fault-Tolerant Average Execution Time Optimization for General-Purpose Multi-Processor System-on-Chips
Design Automation and Test in Europe (DATE 2009), Nice, France, April 20-24, 2009, pp. 484-489.
Fault-tolerance is due to the semiconductor technology development important, not only for safety-critical systems but also for general-purpose (non-safety critical) systems. However, instead of guaranteeing that deadlines always are met, it is for general-purpose systems important to minimize the average execution time (AET) while ensuring fault-tolerance. For a given job and a soft (transient) error probability, we define mathematical formulas for AET that includes bus communication overhead for both voting (active replication) and rollback-recovery with checkpointing (RRC). And, for a given multi-processor system-on-chip (MPSoC), we define integer linear programming (ILP) models that minimize AET including bus communication overhead when: (1) selecting the number of checkpoints when using RRC, (2) finding the number of processors and job-to-processor assignment when using voting, and (3) defining fault-tolerance scheme (voting or RRC) per job and defining its usage for each job. Experiments demonstrate significant savings in AET.
[VSL09] Mikael Väyrynen, Virendra Singh, Erik Larsson, "Fault-Tolerant Average Execution Time Optimization for General-Purpose Multi-Processor System-on-Chips", Design Automation and Test in Europe (DATE 2009), Nice, France, April 20-24, 2009, pp. 484-489.