Skip to main content

somatize_runtime/
lib.rs

1//! Execution engine for Soma computational graphs.
2//!
3//! Provides the runtime components that execute compiled plans:
4//! - [`runner`] — trait-based execution: LocalRunner, StreamExecutor, StudyRunner, PbtRunner
5//! - [`executor`] — walks [`ExecutionPlan`] trees (sequence, parallel, cached, remote)
6//! - [`GraphSession`] — the primary orchestrator: Graph + filters → compile → execute
7//! - [`cache`] — LRU memory cache, local disk cache, tiered cache
8//! - [`sampler`] — hyperparameter samplers (Grid, Random, Bayesian/TPE)
9//! - [`pruner`] — early stopping strategies (Median, Percentile)
10
11pub mod cache;
12pub mod event_bus;
13pub mod executor;
14pub mod executors;
15pub mod filter_library;
16pub mod graph_session;
17pub mod pruner;
18pub mod runner;
19pub mod sampler;
20
21pub use cache::{LocalCache, MemoryCache, TieredCache};
22pub use event_bus::EventBus;
23pub use executor::{Context, GraphInfo, execute, resolve_input};
24pub use executors::{
25    FittedFilter, FnPbtExecutor, FnTrialExecutor, PbtConfig, PbtExecutor, PbtRunner,
26    PopulationMember, StreamExecutor, StudyRunner, TrialExecutor, TrialOutcome,
27};
28pub use filter_library::FilterLibrary;
29pub use graph_session::{GraphSession, graph_fit, graph_predict, graph_run};
30pub use pruner::{MedianPruner, PercentilePruner, Pruner};
31pub use runner::{LocalRunner, RemoteRunner, Runner, Transport};
32pub use sampler::{BayesianSampler, GridSampler, RandomSampler, Sampler};