Algorithm-based checkpoint-free fault tolerance for parallel matrix computations on volatile resources