pub struct TensorBinding {
pub handle: BufferBinding,
pub strides: Strides,
pub shape: Shape,
pub tiling: Tiling,
}Expand description
Tensor representation with a reference to the server handle, the strides and the shape.
Fields§
§handle: BufferBinding§strides: Strides§shape: Shape§tiling: TilingHow many fragments each logical dim is stored as; untiled by default.
The shape and strides stay physical, as on Metadata.
Implementations§
Source§impl TensorBinding
impl TensorBinding
pub fn size(&self) -> usize
Sourcepub fn required_address_type(&self, elem_size: usize) -> AddressType
pub fn required_address_type(&self, elem_size: usize) -> AddressType
Address type required to fully index this tensor handle, assuming scalar access.
Sourcepub fn with_tiling(self, tiling: Tiling) -> Result<Self, MetadataError>
pub fn with_tiling(self, tiling: Tiling) -> Result<Self, MetadataError>
This binding with tiling labelling its physical dims.
§Errors
When tiling does not describe this rank: see Tiling::logical_rank.
Source§impl TensorBinding
impl TensorBinding
Sourcepub fn into_tensor_arg(self) -> TensorArg
pub fn into_tensor_arg(self) -> TensorArg
Convert the handle into a tensor argument.
Sourcepub fn into_alias(self, index: usize) -> TensorArg
pub fn into_alias(self, index: usize) -> TensorArg
Convert the handle into a tensor argument.
Sourcepub fn as_alias(&self, index: usize) -> TensorArg
pub fn as_alias(&self, index: usize) -> TensorArg
Convert the handle into a tensor argument.
Sourcepub fn into_buffer_arg(self) -> BufferArg
pub fn into_buffer_arg(self) -> BufferArg
Convert the handle into a buffer argument.
Sourcepub unsafe fn from_raw_parts(
handle: Handle,
strides: Strides,
shape: Shape,
) -> Self
pub unsafe fn from_raw_parts( handle: Handle, strides: Strides, shape: Shape, ) -> Self
Create a handle from raw parts.
§Safety
If you provide wrong strides or shapes, it might create undefined behavior caused by out-of-bounds reads and writes.
Sourcepub unsafe fn from_raw_parts_binding(
handle: BufferBinding,
strides: Strides,
shape: Shape,
) -> Self
pub unsafe fn from_raw_parts_binding( handle: BufferBinding, strides: Strides, shape: Shape, ) -> Self
Create a handle from raw parts.
§Safety
If you provide wrong strides or shapes, it might create undefined behavior caused by out-of-bounds reads and writes.
pub fn into_copy_descriptor(self, elem_size: usize) -> CopyDescriptor
Trait Implementations§
Source§impl Clone for TensorBinding
impl Clone for TensorBinding
Auto Trait Implementations§
impl Freeze for TensorBinding
impl RefUnwindSafe for TensorBinding
impl Send for TensorBinding
impl Sync for TensorBinding
impl Unpin for TensorBinding
impl UnsafeUnpin for TensorBinding
impl UnwindSafe for TensorBinding
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneExpand for Twhere
T: Clone,
impl<T> CloneExpand for Twhere
T: Clone,
fn __expand_clone_method(&self, _: &Scope) -> T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more