Trait burn_tensor::backend::BackendBridge

source ·
pub trait BackendBridge<Origin: Backend>:
    Send
    + Sync
    + Debug {
    type Target: Backend;

    // Required methods
    fn into_target<const D: usize>(
        tensor: FloatTensor<Origin, D>,
        device: Option<Device<Self::Target>>,
    ) -> FloatTensor<Self::Target, D>;
    fn from_target<const D: usize>(
        tensor: FloatTensor<Self::Target, D>,
        device: Option<Device<Origin>>,
    ) -> FloatTensor<Origin, D>;
}
Expand description

Allows tensors to be transferred between backends efficiently.

Required Associated Types§

source

type Target: Backend

The target backend

Required Methods§

source

fn into_target<const D: usize>( tensor: FloatTensor<Origin, D>, device: Option<Device<Self::Target>>, ) -> FloatTensor<Self::Target, D>

Transfer the tensor to the target backend.

source

fn from_target<const D: usize>( tensor: FloatTensor<Self::Target, D>, device: Option<Device<Origin>>, ) -> FloatTensor<Origin, D>

Transfer the tensor from the target backend.

Object Safety§

This trait is not object safe.

Implementors§