Deborah.DeborahThreads.DeborahThreadsRunner

Deborah.DeborahThreads.DeborahThreadsRunner.JobArgsDeborahType
struct JobArgsDeborah

Container struct for a single Deborah.DeborahCore job configuration.

Fields

  • location::String: Base path for input/output.
  • ensemble::String: Ensemble name (e.g., "L8T4b1.60k13570").
  • analysis_header::String: Header string for organizing analysis subdirectories.
  • X::Vector{String}: Input feature names.
  • Y::String: Target observable name.
  • model::String: ML model name (e.g., "LightGBM").
  • read_column_X::Vector{Int}: Vector of $1$-based column indices specifying which column to read from each input feature file in X.
  • read_column_Y::Int: $1$-based column index specifying which column to read from the target observable file Y.
  • index_column::Int : $1$-based column index to read the configuration index from files (typically 1 if configuration index is in the first column).
  • label::String: LBP label identifier (e.g., "75").
  • train::String: TRP train identifier (e.g., "40").
  • ranseed::Int: Random seed for bootstrap.
  • N_bs::Int: Number of bootstrap samples.
  • blk_size::Int: Bootstrap block size.
  • bin_size::Int: Jackknife bin size.
  • IDX_shift::Int: Index shift.
  • dump_X::Bool: Whether to dump the X matrix.
  • overall_name::String: Filename prefix used throughout output files.
  • abbreviation::Dict{String, String}: Dictionary mapping observables to abbreviations.
  • use_abbreviation::Bool: Whether to encode names using abbreviations.
  • output_base::String: Directory path for outputs (not including filename prefix).
source
Deborah.DeborahThreads.DeborahThreadsRunner.generate_toml_dictMethod
generate_toml_dict(
    args::JobArgsDeborah
) -> Dict

Generate a TOML-compatible dictionary based on a DeborahThreadsRunner.JobArgsDeborah struct. This dictionary can be serialized to disk and used as a configuration file for Deborah.DeborahCore or Deborah.Esther.

Arguments

Returns

  • Dict: A TOML-structured dictionary, with properly nested data, bootstrap, jackknife, and abbreviation sections.
source
Deborah.DeborahThreads.DeborahThreadsRunner.parse_config_DeborahThreadsFunction
parse_config_DeborahThreads(
    toml_path::String, 
    jobid::Union{Nothing, String}=nothing
) -> Vector{JobArgsDeborah}

Parse a TOML config file and generate one DeborahThreadsRunner.JobArgsDeborah struct per label/train pair. This function is used in Deborah.DeborahCore parallel execution to schedule multiple jobs.

Arguments

  • toml_path::String: Path to a TOML configuration file defining multiple LBP/TRP jobs.
  • jobid::Union{Nothing, String} : Optional job ID string used for logging.

Returns

  • Vector{JobArgsDeborah}: A list of job argument structs, each ready to be passed into a Deborah.DeborahCore run.
source
Deborah.DeborahThreads.DeborahThreadsRunner.run_one_jobMethod
run_one_job(
    args::JobArgsDeborah, 
    output_dir::String, 
    log_path::String
) -> Nothing

Run a single Deborah.DeborahCore job based on the given arguments. Generates a TOML config, saves it, and runs Deborah.DeborahCore.DeborahRunner.run_Deborah() while logging start/end timestamps and errors.

Arguments

  • args::JobArgsDeborah: Struct with job parameters.
  • output_dir::String: Directory where outputs and config file will be saved.
  • log_path::String: File path to save the run log.
source