babs submit: Submit jobs

Command-Line Arguments

Submit jobs to cluster compute nodes.

usage: babs submit [-h] [--count COUNT | --select SELECT [SELECT ...] |
                   --inclusion-file INCLUSION_FILE] [--skip-running-jobs]
                   [PATH]

Positional Arguments

PATH

Absolute path to the root of BABS project. For example, '/path/to/my_BABS_project/' (default is current working directory).

Named Arguments

--count

Submit this many jobs instead of submitting all remaining jobs.

--select

Select specific jobs to submit by subject and optionally session. Use as --select sub-XX [ses-YY] and repeat the flag to submit multiple jobs, or provide multiple values per flag (argparse appends and supports nargs). Examples: --select sub-01, --select sub-01 ses-01, --select sub-01 --select sub-02, --select sub-01 ses-01 --select sub-02 ses-02.

--inclusion-file

Path to a CSV file that lists the subjects (and sessions) to analyze. The file should columns: sub_id and, if session-level processing, ses_id. If this flag is specified, it will override the --select flag.

--skip-running-jobs

Allow submission when there are running/pending jobs by skipping those jobs instead of raising errors.

Warning

Do NOT kill babs submit while it's running! Otherwise, new job IDs may not be captured or saved into the job_status.csv!

Example commands

Basic use

If users only provide the required argument project_root, babs submit will only submit one job:

babs submit /path/to/my_BABS_project

Submitting a certain amount of jobs

babs submit \
    /path/to/my_BABS_project \
    --count N

Change N to the number of jobs to be submitted.

Submit jobs for specific subjects (and sessions)

For single-session datasets, select subjects with --select. You can repeat the flag or pass multiple values in one flag (argparse appends and supports nargs):

babs submit \
    /path/to/my_BABS_project \
    --select sub-01 \
    --select sub-02

For multi-session datasets, include both sub-XX and ses-YY pairs:

babs submit \
    /path/to/my_BABS_project \
    --select sub-01 ses-A \
    --select sub-02 ses-B

You may also pass multiple values per flag:

babs submit \
    /path/to/my_BABS_project \
    --select sub-01 sub-02

Note

If there are jobs currently running, babs submit will refuse to submit new jobs until the running jobs finish or are cancelled. Use babs status to check progress.

To resubmit only failed jobs while others are still running or pending, use babs submit --skip-running-jobs; it will skip running/pending jobs and list the skipped job IDs.