A novel roll-back mechanism for performance enhancement of asynchronous checkpointing and recovery