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 forward;
17pub mod graph_session;
18pub mod pruner;
19pub mod runner;
20pub mod sampler;
21
22pub use cache::{LocalCache, MemoryCache, TieredCache};
23pub use event_bus::EventBus;
24pub use executor::{Context, GraphInfo, execute, resolve_input};
25pub use executors::{
26    FittedFilter, FnPbtExecutor, FnTrialExecutor, PbtConfig, PbtExecutor, PbtRunner,
27    PopulationMember, StreamExecutor, StudyRunner, TrialExecutor, TrialOutcome,
28};
29pub use filter_library::FilterLibrary;
30pub use forward::{Batched, ForwardStrategy, Standard, Stream};
31pub use graph_session::{GraphSession, graph_fit, graph_predict, graph_run};
32pub use pruner::{MedianPruner, PercentilePruner, Pruner};
33pub use runner::{LocalRunner, RemoteRunner, Runner, Transport};
34pub use sampler::{BayesianSampler, GridSampler, RandomSampler, Sampler};