We study the scheduling of computational workflows on compute resources thatexperience exponentially distributed failures. When a failure occurs, rollback and recovery is usedto resume the execution from the last checkpointed state. The scheduling problem is to minimizethe expected execution time by deciding in which order to execute the tasks in the workflow andwhether to checkpoint or not checkpoint a task after it completes. We give a polynomial-timealgorithm for fork graphs and show that the problem is NP-complete with join graphs. Our mainresult is a polynomial-time algorithm to compute the execution time of a workflow with specifiedto-be-checkpointed tasks. Using this algorithm as a basis, we propose efficient heuristics for solvingth...