Submit programs for execution in order defined by structure of input list. Programs inside sublists will be executed in parallel, and sublists themselves would be submitted sequentially.
abba_submit_batch.RdSubmit programs for execution in order defined by structure of input list. Programs inside sublists will be executed in parallel, and sublists themselves would be submitted sequentially.
Usage
abba_submit_batch(
prog_list,
sequential = FALSE,
submit_func = abba_rslauncher_submit_job_local,
wait_func = abba_rslauncher_watch_job_local,
succeed_func = abba_rslauncher_get_job_succeeded_local,
col_name = "run_group",
halt_on_error = TRUE,
rerun_unchanged_programs = TRUE,
update_cache = FALSE,
cache_folder = getOption("abba.default_cache_folder"),
...
)Arguments
- prog_list
A list of R program paths to execute
- sequential
when sequential=TRUE, prog_list is flattened and everything is executed sequentially.
- submit_func
function that will be used to submit jobs
- wait_func
function that checks job status and returns when job finishes executing
- succeed_func
function that returns TRUE if job finished running without errors and FALSE otherwise
- col_name
Name of the column that contains run group numbers when prog_list is a data frame
- halt_on_error
If TRUE: if prog_list contains program inputs/outputs - programs that depend on failed program will not be executed; if prog_list contains only program paths - when program fails, entire batch will stop executing. TRUE by default
- rerun_unchanged_programs
If FALSE: will not re-run programs whose code and inputs have not been modified since last batch run with update_cache=TRUE.
- update_cache
if TRUE, file hash for programs and their inputs will be calculated and saved in .abba_cache folder. It will be done after batch run(.abba_cache folder will be created if it does not exist). If FALSE, .abba_cache folder will not be created/updated. FALSE by default.
- cache_folder
specify a path to the folder where hash-sums of programs and their inputs will be stored. By default, those hashes are saved in the subfolder .abba_cache of the same folder as target(program/programs input). The default value can be set by specifying abba.default_cache_folder option.
- ...
arguments that will be passed to submit_func and wait_func functions
Examples
if (FALSE) { # \dontrun{
job_ids <- abba_submit_batch(list(
c("/mnt/work_drive/proj/comp/prot/task/development/prod/program/sdtm/dm.sas"),
c("/mnt/work_drive/proj/comp/prot/task/development/prod/program/sdtm/ae.sas"),
c("/mnt/work_drive/proj/comp/prot/task/development/prod/program/tfl/t1_dm.sas",
"/mnt/work_drive/proj/comp/prot/task/development/prod/program/tfl/t1_ae.sas")))
} # }