API Reference
Rustdoc
The public API is split by responsibility. Start with tenferro-runtime for concrete tensors, traced graphs, compilation, execution, and extension runtime registration; add tenferro-ad when you need eager execution or automatic differentiation.
For contributors, internal crate APIs are also available in the full workspace Rustdoc index.
Workspace Crates
- tenferro-runtime: concrete tensor helpers, traced tensors, graph compilation/execution, extension runtime registration, and extension cache storage
- tenferro-ad: eager runtime, eager tensors, and traced AD extension traits
- tenferro-xla: experimental StableHLO lowering and runtime-loaded PJRT plugin support for static-shaped traced programs
- tenferro-tensor: dense runtime tensors, typed views, backend traits, and backend-independent contracts
- tenferro-cpu: CPU backend, CPU execution sessions, CPU kernels, buffer pools, and CPU provider selection
- tenferro-gpu: CubeCL/CUDA backend and GPU transfer helpers
- tenferro-einsum: subscripts, contraction planning, traced/eager einsum APIs, extension runtime, and AD rule
- tenferro-linalg: linear algebra traced APIs, eager helpers, extension runtime, and optional linalg AD rules
- tenferro-fft: FFT extension runtime and public FFT APIs
Internal Implementation Crates
These crates are documented for contributors and crate-boundary review. They are not the recommended application-facing API surface.
- tenferro-tensor-core: host-only tensor data model, dtype tags, scalar traits, rank metadata, and metadata-only views
- tenferro-core-ops: internal primitive operation catalog metadata
- tenferro-internal-ops: graph operation vocabulary and AD rule implementations
- tenferro-internal-extension-macros: internal extension-op registration macros