pub trait CpuLayoutTransformProvider:
Debug
+ Send
+ Sync
+ 'static {
// Required methods
fn execution_capabilities(&self) -> CpuProviderExecutionCapabilities;
fn materialize(
&self,
context: &CpuExecutionContext<'_>,
request: CpuLayoutTransformRequest<'_, '_, '_>,
) -> Result<CpuProviderOutcome>;
}Expand description
Provider for engine-owned tensor materialization.
§Examples
use tenferro_cpu::provider::CpuLayoutTransformProvider;Required Methods§
Sourcefn execution_capabilities(&self) -> CpuProviderExecutionCapabilities
fn execution_capabilities(&self) -> CpuProviderExecutionCapabilities
Return immutable count, placement, and fan-out capabilities.
A provider bundle samples this method exactly once during construction and uses the stored descriptor for all validation and dispatch.
Sourcefn materialize(
&self,
context: &CpuExecutionContext<'_>,
request: CpuLayoutTransformRequest<'_, '_, '_>,
) -> Result<CpuProviderOutcome>
fn materialize( &self, context: &CpuExecutionContext<'_>, request: CpuLayoutTransformRequest<'_, '_, '_>, ) -> Result<CpuProviderOutcome>
Materialize one validated input into a preallocated output.
§Errors
Returns tenferro_tensor::Error::BackendSource or
tenferro_tensor::Error::BackendFailure when execution fails. A
detected inconsistency in engine-attested layout or range metadata is
returned as tenferro_tensor::Error::Validation. Unsupported layouts
use CpuProviderOutcome::Unsupported instead.