pub struct GdnJob;Expand description
The word a hybrid engine’s core gives its recurrence unit with a job of a lazily flushed memory’s token-rows
(Streaming::recurrence), its fields from the lowest bit: the job’s rows (16 bits); its block’s memory’s and log’s
offsets in a row’s region and a log entry’s bytes, its key and value heads, a log entry’s values’, decay exponents’ and
gates’ first elements, the read-out’s scale’s bits (32 bits each); the store slots of the rows’ query, output, key
heads, value heads, decay exponents and gates (5 bits each) and the values’ first element in theirs (20 bits); the
tokens a flush takes (8 bits), and whether the state stores binary16. The fast side lays each row’s region and store
beats from its copies of the rows and slots tables (logos_gdn_rows).
Implementations§
Source§impl GdnJob
impl GdnJob
pub const ROWS: usize = 0
pub const MEMORY: usize = 16
pub const LOG: usize = 48
pub const ENTRY: usize = 80
pub const KEY_HEADS: usize = 112
pub const VALUE_HEADS: usize = 144
pub const VALUES: usize = 176
pub const DECAYS: usize = 208
pub const GATES: usize = 240
pub const SCALE: usize = 272
pub const QUERY: usize = 304
pub const OUTPUT: usize = 309
pub const KEY: usize = 314
pub const VALUE: usize = 319
pub const LOG_DECAY: usize = 324
pub const GATE: usize = 329
pub const VALUE_AT: usize = 334
pub const TOKENS: usize = 354
pub const F16: usize = 362
pub const BITS: usize = 363
Sourcepub const NORM: usize = 363
pub const NORM: usize = 363
A build whose recurrence makes its gated norms (Streaming::delta_norm): whether the job carries one, its
gate’s slot, the norm’s epsilon and its weight’s first line, past the fields every build takes.
pub const Z: usize = 364
pub const EPS: usize = 369
pub const W_LINE: usize = 401
pub const NORMED_BITS: usize = 433
Auto Trait Implementations§
impl Freeze for GdnJob
impl RefUnwindSafe for GdnJob
impl Send for GdnJob
impl Sync for GdnJob
impl Unpin for GdnJob
impl UnsafeUnpin for GdnJob
impl UnwindSafe for GdnJob
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<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.