pub struct Placement {Show 16 fields
pub name: String,
pub ty: &'static str,
pub dims: Vec<u64>,
pub rows: u64,
pub row_bytes: u64,
pub pieces: u64,
pub rows_per_tile: u64,
pub tile_lines: u64,
pub channels: Vec<u32>,
pub first_line: Vec<u64>,
pub first_tile: usize,
pub tile_count: usize,
pub tap_major: Option<u64>,
pub block_bytes: u64,
pub block_major: bool,
pub pad: u64,
}Expand description
Where one tensor lies: its rows in the image and their size — each stored row cut into pieces equal runs, more
than one only for a tap-major kernel’s tap past a tile — the rows every tile but its last holds and the lines such a
tile takes, the channels in the order its tiles are dealt, the line each of them holds its first tile of the tensor
at, its tiles’ run in Image::tiles, its taps when it is stored tap-major, the bytes of its format’s block,
whether its tiles hold their rows block-major (laid in stripes), and the zeros each of a striped tensor’s blocks is
padded with to the image’s slot.
Fields§
§name: String§ty: &'static str§dims: Vec<u64>§rows: u64§row_bytes: u64§pieces: u64§rows_per_tile: u64§tile_lines: u64§channels: Vec<u32>§first_line: Vec<u64>§first_tile: usize§tile_count: usize§tap_major: Option<u64>§block_bytes: u64§block_major: bool§pad: u64The zeros after each block of a tensor laid in stripes, to the image’s slot.
Implementations§
Source§impl Placement
impl Placement
Sourcepub fn slot_bytes(&self) -> u64
pub fn slot_bytes(&self) -> u64
The bytes one of the tensor’s blocks takes in the image: its block’s, and its pad.
Sourcepub fn image_row_bytes(&self) -> u64
pub fn image_row_bytes(&self) -> u64
The bytes one of the tensor’s rows takes in the image: its stored bytes, each block’s pad beside it.
Trait Implementations§
impl Eq for Placement
impl StructuralPartialEq for Placement
Auto Trait Implementations§
impl Freeze for Placement
impl RefUnwindSafe for Placement
impl Send for Placement
impl Sync for Placement
impl Unpin for Placement
impl UnsafeUnpin for Placement
impl UnwindSafe for Placement
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§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>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§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>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§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.§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.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.