Fault Tolerance of Parallel Adaptive Applications in Heterogeneous Systems