Skip to main content

sim_lib_compute_model/
lib.rs

1#![forbid(unsafe_code)]
2#![deny(missing_docs)]
3//! Modeled resident tensor compute provider.
4//!
5//! The modeled provider is a deterministic `TensorExecutor` for tests,
6//! recipes, and future hardware-provider conformance. It executes through the
7//! published `sim-lib-numbers-tensor` CPU semantics, then wraps successful
8//! results in resident storage owned by `site/compute/model`.
9
10mod model;
11mod ode;
12mod site;
13mod storage;
14
15pub use model::{
16    ModeledComputeFault, ModeledComputeProfile, ModeledComputeSnapshot, ModeledResidentSegment,
17    ModeledTensorExecutor, modeled_executor_symbol,
18};
19pub use ode::{
20    ResidentOdeExecution, ResidentOdeExecutor, ResidentOdeKind, ResidentOdePlan,
21    ResidentRhsLowering,
22};
23pub use site::{ComputeModelLib, compute_model_lib_symbol, compute_model_site_symbol};
24pub use storage::{ModeledResidentStorage, ResidentHandle};
25
26/// Cookbook recipes for this lib, embedded at build time.
27pub static RECIPES: sim_cookbook::EmbeddedDir =
28    include!(concat!(env!("OUT_DIR"), "/cookbook_recipes.rs"));
29
30#[cfg(test)]
31mod ode_tests;
32#[cfg(test)]
33mod tests;