tenferro_dynamic_compute/
lib.rs

1//! Dynamic non-AD tensor compute facade for tenferro-rs.
2//!
3//! This crate is the public home for runtime-selected dtypes without autodiff.
4//! It re-exports the shared dynamic tensor substrate plus runtime management.
5//!
6//! # Examples
7//!
8//! ```rust
9//! use tenferro_dynamic_compute::{ScalarType, Tensor};
10//! use tenferro_tensor::{MemoryOrder, Tensor as DenseTensor};
11//!
12//! let dense = DenseTensor::<f64>::from_slice(&[1.0, 2.0], &[2], MemoryOrder::ColumnMajor)?;
13//! let value: Tensor = dense.into();
14//!
15//! assert_eq!(value.scalar_type(), ScalarType::F64);
16//! # Ok::<(), tenferro_dynamic_compute::Error>(())
17//! ```
18
19pub mod snapshot {
20    //! Dynamic primal snapshots shared across tenferro surface crates.
21
22    pub use tenferro_internal_frontend_core::snapshot::*;
23}
24
25pub use tenferro_device::{ComputeDevice, LogicalMemorySpace};
26pub use tenferro_internal_error::{Error, Result};
27pub use tenferro_internal_frontend_core::{
28    DynTensor as Tensor, ScalarType, ScalarValue, StructuredTensor,
29};
30pub use tenferro_internal_runtime::{
31    set_default_runtime, with_default_runtime, with_runtime, DefaultRuntimeGuard, RuntimeContext,
32};
33pub use tenferro_tensor::MemoryOrder;