Skip to content

Document how to do a "start up graph" #471

@hjoliver

Description

@hjoliver

I get this question fairly often: how to make special stuff happen in the first cycle, before the next cycle starts.

If there's no inter-cycle dependence, some users find it surprising that upcoming cycles start running concurrently with the first cycle.

Example:

# First cycle only:
a => b => x

# Subsequent cycles:
x => y

# Caveat: there's no dependence between instances of `x`;  but none of them should
#   run before 1/b is finished, because it does some kind of prep needed by all `x`s.

If all xs do technically depend on b, as described, we should take that literally:

R1 = "a => b"
P1 = "b[^] => x => y"

(TODO: there used to be some downsides to perpetual dependence on the initial cycle point - for graph visualization, and cycle computation? - not sure if that still matters for Cylc 8).

Alternatively, use an artificial dependence between instances of x that makes them submit in order but still allows them to run concurrently:

R1 = "a => b => x"
P1 = "x[-P1] => x => y"

Metadata

Metadata

Assignees

No one assigned

    Labels

    contentAddition or modification of documentation

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions