version: "1" # version of the workflow pipeline; as of 2023 May, there's only version 1 name: "nmulyk-baseband-processing" # name of your pipeline event_number: &event-number 254820502 # for easy replacement later in the yaml file event_str: &event-str "254820502" defaults: # every object in the pipeline will have these parameters user: "nmulyk" # to keep track of who's submitting what job on the workflow website site: "canfar" # to run this at canfar event: [*event-str] pipeline: stage_data: stage: 1 work: pipeline: "baseband-nmulyk-datatrail" # name of the bucket this object will be deposited into and run from command: - "datatrail" - "pull" - "chime.event.baseband.raw" - *event-str - "-vvv" # verbose - "-f" # force - "-c" # cores - "4" tags: - "lowDM" - "stage-data" timeout: 10000 priority: 3 # this is the default. 1 is lowest priority, 5 is highest priority. initialize: stage: 2 work: pipeline: "baseband-nmulyk" function: baseband_analysis.pipelines.cluster.cluster_cli.initialize parameters: event_number: *event-number site: canfar tags: - "lowDM" - "initialize" timeout: 600 refinement_tiedbeam: stage: 3 matrix: job_id: range: [1,64] work: pipeline: "baseband-nmulyk" function: baseband_analysis.pipelines.cluster.cluster_cli.tiedbeam parameters: event_number: *event-number site: canfar job_id: ${{ matrix.job_id }} parameters: ["baseband_pipeline", "refinement", "job_size", "64", "files_per_group", "2"] tags: - "lowDM" - "refinement" - "tiedbeam" retries: 3 timeout: 900 refinement_merge: stage: 4 work: pipeline: "baseband-nmulyk" function: baseband_analysis.pipelines.cluster.cluster_cli.merge parameters: event_number: *event-number site: canfar parameters: ["baseband_pipeline", "refinement"] tags: - "lowDM" - "refinement" - "merge" timeout: 600 refinement_analysis: stage: 5 work: pipeline: "baseband-nmulyk-brightest" function: baseband_analysis.pipelines.cluster.cluster_cli.brightest parameters: event_number: *event-number site: canfar parameters: ["distributor_name", "baseband-refinement", "baseband_pipeline", "refinement", "num_parallel_processes", "8"] # num_parallel_processes speeds up the MCMC localization component of this stage tags: - "lowDM" - "refinement" - "analysis" timeout: 7200 localization_tiedbeam: stage: 6 matrix: job_id: range: [1,64] work: pipeline: "baseband-nmulyk" function: baseband_analysis.pipelines.cluster.cluster_cli.tiedbeam parameters: event_number: *event-number site: canfar job_id: ${{ matrix.job_id }} parameters: ["baseband_pipeline", "localization", "job_size", "64", "files_per_group", "2", "get_parameters_from_h5", "true"] tags: - "lowDM" - "localization" - "tiedbeam" retries: 3 timeout: 900 localization_merge: stage: 7 work: pipeline: "baseband-nmulyk" function: baseband_analysis.pipelines.cluster.cluster_cli.merge parameters: event_number: *event-number site: canfar parameters: ["baseband_pipeline", "localization"] tags: - "lowDM" - "localization" - "merge" timeout: 600 localization_analysis: stage: 8 work: pipeline: "baseband-nmulyk" function: baseband_analysis.pipelines.cluster.cluster_cli.localization parameters: event_number: *event-number site: canfar parameters: ["distributor_name", "baseband-localization"] tags: - "lowDM" - "localization" - "analysis" timeout: 600 singlebeam_tiedbeam: stage: 9 matrix: job_id: range: [1,64] work: pipeline: "baseband-nmulyk" function: baseband_analysis.pipelines.cluster.cluster_cli.tiedbeam parameters: event_number: *event-number site: canfar job_id: ${{ matrix.job_id }} parameters: ["baseband_pipeline", "singlebeam", "job_size", "64", "files_per_group", "2", "get_parameters_from_h5", "true"] tags: - "lowDM" - "singlebeam" - "tiedbeam" retries: 3 timeout: 900 singlebeam_merge: stage: 10 work: pipeline: "baseband-nmulyk" function: baseband_analysis.pipelines.cluster.cluster_cli.merge parameters: event_number: *event-number site: canfar parameters: ["baseband_pipeline", "singlebeam"] tags: - "lowDM" - "singlebeam" - "merge" timeout: 600 singlebeam_analysis: stage: 11 work: pipeline: "baseband-nmulyk" function: baseband_analysis.pipelines.cluster.cluster_cli.waterfall parameters: event_number: *event-number site: canfar tags: - "lowDM" - "singlebeam" - "analysis" - "waterfall" timeout: 600 finalize: stage: 12 work: pipeline: "baseband-nmulyk" function: baseband_analysis.pipelines.cluster.cluster_cli.finalize parameters: event_number: *event-number site: canfar tags: - "lowDM" - "finalize" timeout: 600 unstage_data: stage: 12 if: 'always' # should always run even if an earlier stage fails... in practice, doesn't seem to always be the case work: pipeline: "baseband-nmulyk-datatrail" command: - "datatrail" - "clear" - "chime.event.baseband.raw" - *event-str - "-vvv" - "-f" # force tags: - "lowDM" - "unstage-data" priority: 5