Changes between Version 5 and Version 6 of Workshops/JobCheckpointing/Examples


Ignore:
Timestamp:
04/02/2026 12:41:45 PM (4 months ago)
Author:
Carl Baribault
Comment:

Added headings, references (ongoing)

Legend:

Unmodified
Added
Removed
Modified
  • Workshops/JobCheckpointing/Examples

    v5 v6  
    22= Job Checkpointing Examples =
    33
    4 For a quick start see [wiki:Workshops/JobCheckpointing/Examples#WorkingExamples Working Examples] below.
     4'''Before you adopt a checkpointing workflow''', consider whether your workflow can be considered
     5'''embarrassingly parallel''', where the data elements can be processed '''entirely independently''' of each other - rather than each one depending on the previous. (See also [https://www.freecodecamp.org/news/embarrassingly-parallel-algorithms-explained-with-examples/ Embarrassingly Parallel Algorithms Explained].)
     6
     7If so, namely that your case is the former (embarrassingly parallel) in the above, then please first refer to the workshop [wiki:Workshops/JobParallelism].
     8
     9== Quick start ==
     10
     11For a quick start using checkpointing, see [wiki:Workshops/JobCheckpointing/Examples#WorkingExamples Working Examples] below.
     12
     13== Background on checkpointing ==
    514
    615Here is an implementation for running '''sequential workflows''' on Cypress - where each component result of the workflow depends the previous component result in the workflow.
     
    1019* submitter/runner pattern (see also [https://gjbex.github.io/Workflows-for-HPC/ Workflow for HPC])
    1120* job chaining (see [https://docs.nersc.gov/jobs/best-practices/ (NERSC) Best Practices for Jobs])
    12 * sequential workflows
    13 * restart workflows
     21* sequential workflows (see [https://nlsq.readthedocs.io/en/latest/tutorials/routine/three_workflows/hpc_workflow.html Another checkpointing implementation])
     22* restart workflows (see [https://compendium.hpc.tu-dresden.de/jobs_and_resources/checkpoint_restart/ Checkpoint Motivation])
    1423* checkpoint/restart job series
    1524* using job dependencies to restart jobs that checkpoint their state”
    1625
    17 '''But wait''' - before you adopt this type of checkpointing workflow, consider whether your workflow can be considered
    18 '''embarrassingly parallel''', where the data elements can be processed '''entirely independently''' of each other - rather than each one depending on the previous. (See also [https://www.freecodecamp.org/news/embarrassingly-parallel-algorithms-explained-with-examples/ Embarrassingly Parallel Algorithms Explained].)
    19 
    20 If so, namely that your case is the former (embarrassingly parallel) in the above, then please first refer to the workshop [wiki:Workshops/JobParallelism].
    21 
    22 == Checkpoint Submitter ==
     26== Checkpoint workflow implementation ==
     27
     28=== Checkpoint Submitter ===
    2329
    2430Here is a job script for a fully self restarting job that controls the workflow by submitting the checkpoint runner job script (see [wiki:Workshops/JobCheckpointing/Examples#CheckpointRunner Checkpoint Runner]) further below.
    2531
    26 === checkpoint_submitter.sh ===
     32==== checkpoint_submitter.sh ====
    2733
    2834{{{
     
    222228}}}
    223229
    224 == Checkpoint Runner ==
     230=== Checkpoint Runner ===
    225231
    226232Here is the checkpoint runner job script for use with the following.
     
    232238 * For R, see [wiki:Workshops/JobCheckpointing/Examples#RCheckpointingExample R Checkpointint Example]
    233239
    234 === checkpoint_runner.sh ===
     240==== checkpoint_runner.sh ====
    235241
    236242{{{