Crash Skipping

Yan Verdeja Herms, Yanjing Li · 2019

We present a lightweight technique to minimize error recovery costs in approximate computing environments. We take advantage of the key observation that if an application crashes in a "non-critical" region of its execution, then skipping the crash and allowing the execution to continue oftentimes results in "acceptable" output, due to the inherent fault-tolerance of approximate applications. By skipping application crashes, the program is given a chance to recover from an error on its own, without expending computing power towards error recovery. The system-level support required to implement our Crash Skipping technique imposes negligible overhead. Experimental results from representative approximate applications demonstrate that our technique is effective, resulting in successful error recovery for 56% of application crash cases on average, with a maximum recovery rate of 81%. By combining our technique with application restart, we obtain ~33% improvement in performance/energy consumption compared to recovering from crashes by restarting alone. This benefit is comparable to what can be achieved using aggressive checkpointing techniques, but without the significant costs in system design and complexity that such techniques impose.

Read the paper · More papers on PaperTik