Skip to Main Content
A major issue of process state capture in heterogeneous computing systems is capture initiation. Current approaches incur significant performance overhead during normal execution of the process (i.e., when state capture/recovery is not being performed) in order to ensure proper initiation of state capture. This is because of their introduction of instructions into the user code, either to poll for a capture request, or to ensure correctness of self-modifying code in the case of a poll-free mechanism. In this paper, we propose a fundamentally new approach to heterogeneous process state capture and recovery that achieves minimum performance overhead during normal execution by obviating the introduction of such instructions. In the case of high-performance computing applications, the performance gain thus achieved $especially within critical loops - would be significant. Also, our solution is suitable for effectively enabling all potential points of equivalence present in a computation if minimal latency is desired.