in submitit/core/job_environment.py [0:0]
def _checkpoint(delayed: DelayedSubmission, filepath: Path, countdown: int) -> str:
"""Call the checkpoint method and dump the updated delayed.
Returns:
--------
no_requeue_reason: str
a string explaining while there was no requeuing, else empty string if requeuing works
"""
logger.get_logger().info("Calling checkpoint method.")
ckpt_delayed = delayed._checkpoint_function()
if ckpt_delayed is None:
return "checkpoint function returned None"
ckpt_delayed.set_timeout(delayed._timeout_min, countdown)
with utils.temporary_save_path(filepath) as tmp:
ckpt_delayed.dump(tmp)
return "" # requeues