Deborah.EstherThreads.EstherThreadsRunner
Deborah.EstherThreads.EstherThreadsRunner.JobArgsEsther — Typestruct JobArgsEstherContainer for all job parameters required to execute a single Deborah.Esther computation.
Fields
location::String: Root directory for data and outputs.ensemble::String: Ensemble identifier.analysis_header::String: Prefix for analysis/output directories.TrM1_X::Vector{String}: Input feature names for $\text{Tr} \, M^{-1}$.TrM1_Y::String: Target observable for $\text{Tr} \, M^{-1}$.TrM1_model::String: Model name for $\text{Tr} \, M^{-1}$ (e.g.,"LightGBM").TrM1_read_column_X::Vector{Int}: $1$-based value-column indices forX(features) of $\text{Tr} \, M^{-1}$.TrM1_read_column_Y::Int: $1$-based value-column index for $\text{Tr} \, M^{-1}$.TrM1_index_column::Int: $1$-based column index of configuration IDs ($\text{Tr} \, M^{-1}$).TrM2_X::Vector{String}: Input feature names for $\text{Tr} \, M^{-2}$.TrM2_Y::String: Target observable for $\text{Tr} \, M^{-2}$.TrM2_model::String: Model name for $\text{Tr} \, M^{-2}$.TrM2_read_column_X::Vector{Int}: $1$-based value-column indices forX(features) of $\text{Tr} \, M^{-2}$.TrM2_read_column_Y::Int: $1$-based value-column index for $\text{Tr} \, M^{-2}$TrM2_index_column::Int: $1$-based column index of configuration IDs ($\text{Tr} \, M^{-2}$).TrM3_X::Vector{String}: Input feature names for $\text{Tr} \, M^{-3}$.TrM3_Y::String: Target observable for $\text{Tr} \, M^{-3}$.TrM3_model::String: Model name for $\text{Tr} \, M^{-3}$.TrM3_read_column_X::Vector{Int}: $1$-based value-column indices forX(features) of $\text{Tr} \, M^{-3}$.TrM3_read_column_Y::Int: $1$-based value-column index for $\text{Tr} \, M^{-3}$.TrM3_index_column::Int: $1$-based column index of configuration IDs ($\text{Tr} \, M^{-3}$).TrM4_X::Vector{String}: Input feature names for $\text{Tr} \, M^{-4}$.TrM4_Y::String: Target observable for $\text{Tr} \, M^{-4}$.TrM4_model::String: Model name for $\text{Tr} \, M^{-4}$.TrM4_read_column_X::Vector{Int}: $1$-based value-column indices forX(features) of $\text{Tr} \, M^{-4}$.TrM4_read_column_Y::Int: $1$-based value-column index for $\text{Tr} \, M^{-4}$.TrM4_index_column::Int: $1$-based column index of configuration IDs ($\text{Tr} \, M^{-4}$).label::String: LBP value (as string) propagated to configs/paths.train::String: TRP value (as string) propagated to configs/paths.ns::Int,nt::Int,nf::Int: Lattice/meta parameters used downstream.beta::Float64,kappa::Float64: Simulation parameters.ranseed::Int: Random seed for bootstrap.N_bs::Int: Number of bootstrap replicates.blk_size::Int: Block length for block bootstrap ($\ge 1$).method::String: Block-bootstrap scheme:"nonoverlapping"— Nonoverlapping Block Bootstrap (NBB)"moving"— Moving Block Bootstrap (MBB)"circular"— Circular Block Bootstrap (CBB; wrap-around windows)
bin_size::Int: Jackknife bin size.IDX_shift::Int: Index shift forwarded toDeborah.DeborahCoreprocessing.dump_X::Bool: Whether to dump/saveXfeature matrices.overall_name::String: Directory-safe tag for output labeling.abbreviation::Dict{String,String}: Abbreviation dictionary for feature/path encoding.use_abbreviation::Bool: Iftrue, use abbreviation-based paths/filenames.output_base::String: Base output directory (resolved root for artifacts).
Notes
- All column indices are $1$-based.
methodmust be one of the three literal strings above; validate before use.
Deborah.EstherThreads.EstherThreadsRunner.generate_toml_dict — Methodgenerate_toml_dict(
args::JobArgsEsther
) -> DictGenerate a TOML-compatible dictionary from a JobArgsEsther instance.
Arguments
args::JobArgsEsther: Struct containing all job configuration parameters.
Returns
Dict: Nested dictionary structured forTOMLserialization.
Deborah.EstherThreads.EstherThreadsRunner.parse_config_EstherThreads — Functionparse_config_EstherThreads(
toml_path::String,
jobid::Union{Nothing, String}=nothing
) -> Vector{JobArgsEsther}Parse a TOML configuration file and return a list of JobArgsEsther structs for all (LBP, TRP) combinations defined in the config.
Arguments
toml_path::String: Path to theTOMLconfig file.jobid::Union{Nothing, String}: Optional job ID string used for logging.
Returns
Vector{JobArgsEsther}: AllDeborah.Estherjobs to be run.
Deborah.EstherThreads.EstherThreadsRunner.run_EstherThreads — Methodrun_EstherThreads(
toml_path::String
) -> NothingParse Deborah.Esther configuration TOML and run all jobs in parallel, batched by number of threads.
Arguments
toml_path::String: Path to the master configurationTOMLfile.
Side Effects
- Spawns tasks using
Base.Threads.@spawnto run multiple jobs in parallel. - Logs each job's output in its own result directory.
Deborah.EstherThreads.EstherThreadsRunner.run_one_job — Methodrun_one_job(
args::JobArgsEsther,
output_dir::String,
log_path::String
) -> NothingRun a single Deborah.Esther job: generate TOML file, ensure $\text{Tr} \, M^{-n} \; (n=1,2,3,4)$ data exists, then run Deborah.Esther and log output.
Arguments
args::JobArgsEsther: Struct with full job configuration.output_dir::String: Directory path to writeTOMLfile and results.log_path::String: File path for logging execution output and errors.
Side Effects
- Saves
TOMLconfiguration to disk. - Calls
Deborah.DeborahEsther.EstherDependencyManager.ensure_TrM_existsandDeborah.Esther.EstherRunner.run_Esther. - Logs outputs and errors to the specified file.