pub struct TensorMemoryLayout { /* private fields */ }Expand description
Manager for a collection of LayoutDescriptors.
Each descriptor is assigned a unique u64 identifier on creation.
Provides statistics tracking for auditing and profiling purposes.
Implementations§
Source§impl TensorMemoryLayout
impl TensorMemoryLayout
Sourcepub fn create(
&mut self,
shape: TensorShape,
order: LayoutOrder,
element_size_bytes: usize,
) -> u64
pub fn create( &mut self, shape: TensorShape, order: LayoutOrder, element_size_bytes: usize, ) -> u64
Create a new LayoutDescriptor, store it, and return its id.
Sourcepub fn transpose(&mut self, layout_id: u64) -> Option<u64>
pub fn transpose(&mut self, layout_id: u64) -> Option<u64>
Transpose an existing layout and store the result as a new entry.
Returns None if layout_id does not exist; otherwise returns the
id of the newly created transposed layout.
Sourcepub fn get(&self, layout_id: u64) -> Option<&LayoutDescriptor>
pub fn get(&self, layout_id: u64) -> Option<&LayoutDescriptor>
Retrieve a reference to a layout descriptor by id.
Sourcepub fn stats(&self) -> &LayoutStats
pub fn stats(&self) -> &LayoutStats
Cumulative statistics for this manager.
Trait Implementations§
Source§impl Debug for TensorMemoryLayout
impl Debug for TensorMemoryLayout
Auto Trait Implementations§
impl Freeze for TensorMemoryLayout
impl RefUnwindSafe for TensorMemoryLayout
impl Send for TensorMemoryLayout
impl Sync for TensorMemoryLayout
impl Unpin for TensorMemoryLayout
impl UnsafeUnpin for TensorMemoryLayout
impl UnwindSafe for TensorMemoryLayout
Blanket Implementations§
impl<T> Allocation for T
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>
Converts
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>
Converts
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