Deborah.DeborahThreads

Deborah.DeborahThreadsModule
module DeborahThreads

Deborah.DeborahThreads — Threaded dispatcher for multi-job Deborah.DeborahCore runs.

Deborah.DeborahThreads parallelizes multiple Deborah.DeborahCore jobs (different LBP/TRP partitions, or multiple model/config variations) using Julia Threads. It parses a single TOML that enumerates label/train pairs, expands them into per-job arguments, writes per-job configs, and launches Deborah.DeborahCore.DeborahRunner.run_Deborah concurrently with simple batch scheduling.

Scope & Responsibilities

  • Config expansion: Parse a multi-job TOML and materialize one job per (LBP, TRP).
  • Per-job config writer: Generate TOML dictionaries/files for each job.
  • Threaded execution: Dispatch jobs in batches of Base.Threads.nthreads(); wait per batch.
  • Run logging: Record start/end timestamps and errors per job into run_*.log.

Key Components

File/Path Conventions

  • Output base: <location>/<analysis_header>_<ensemble>/<analysis_header>_<ensemble>_<X_Y_or_code>_<model_suffix>/
  • Per-job directory: .../<overall_name>/
  • Per-job config: config_Deborah_<overall_name>.toml
  • Per-job log: run_Deborah_<overall_name>.log

Minimal Usage

julia> using Deborah
julia> run_DeborahThreads("config_DeborahThreads.toml")

Notes

source