struct Scratch {Show 48 fields
ids: Retained<ProtocolObject<dyn MTLBuffer>>,
e: Retained<ProtocolObject<dyn MTLBuffer>>,
hyper: Retained<ProtocolObject<dyn MTLBuffer>>,
hc: HcBufs,
la: HcBufs,
mix_out: Retained<ProtocolObject<dyn MTLBuffer>>,
qg: Retained<ProtocolObject<dyn MTLBuffer>>,
k: Retained<ProtocolObject<dyn MTLBuffer>>,
v: Retained<ProtocolObject<dyn MTLBuffer>>,
attn_out: Retained<ProtocolObject<dyn MTLBuffer>>,
attn_parts: Retained<ProtocolObject<dyn MTLBuffer>>,
qkv: Retained<ProtocolObject<dyn MTLBuffer>>,
z: Retained<ProtocolObject<dyn MTLBuffer>>,
a: Retained<ProtocolObject<dyn MTLBuffer>>,
b: Retained<ProtocolObject<dyn MTLBuffer>>,
kqn: Retained<ProtocolObject<dyn MTLBuffer>>,
gbuf: Retained<ProtocolObject<dyn MTLBuffer>>,
delta_y: Retained<ProtocolObject<dyn MTLBuffer>>,
router: Retained<ProtocolObject<dyn MTLBuffer>>,
topk_idx: Retained<ProtocolObject<dyn MTLBuffer>>,
topk_w: Retained<ProtocolObject<dyn MTLBuffer>>,
la_router: Retained<ProtocolObject<dyn MTLBuffer>>,
la_idx: Retained<ProtocolObject<dyn MTLBuffer>>,
la_w: Retained<ProtocolObject<dyn MTLBuffer>>,
gate_e: Retained<ProtocolObject<dyn MTLBuffer>>,
hx: HalfSet,
y_e: Retained<ProtocolObject<dyn MTLBuffer>>,
moe_out: Retained<ProtocolObject<dyn MTLBuffer>>,
ple_key: Retained<ProtocolObject<dyn MTLBuffer>>,
ple_keyn: Retained<ProtocolObject<dyn MTLBuffer>>,
ple_value: Retained<ProtocolObject<dyn MTLBuffer>>,
ple_query: Retained<ProtocolObject<dyn MTLBuffer>>,
ple_gated: Retained<ProtocolObject<dyn MTLBuffer>>,
ple_gvn: Retained<ProtocolObject<dyn MTLBuffer>>,
ple_out: Retained<ProtocolObject<dyn MTLBuffer>>,
logits: Retained<ProtocolObject<dyn MTLBuffer>>,
mtp_logits: Retained<ProtocolObject<dyn MTLBuffer>>,
mtp_logits2: Retained<ProtocolObject<dyn MTLBuffer>>,
partials: Retained<ProtocolObject<dyn MTLBuffer>>,
mtp_hyper: Retained<ProtocolObject<dyn MTLBuffer>>,
fe: Retained<ProtocolObject<dyn MTLBuffer>>,
fh: Retained<ProtocolObject<dyn MTLBuffer>>,
iqk: Retained<ProtocolObject<dyn MTLBuffer>>,
iq: Retained<ProtocolObject<dyn MTLBuffer>>,
bscore: Retained<ProtocolObject<dyn MTLBuffer>>,
vis: Retained<ProtocolObject<dyn MTLBuffer>>,
nvis: Retained<ProtocolObject<dyn MTLBuffer>>,
vmask: Retained<ProtocolObject<dyn MTLBuffer>>,
}Fields§
§ids: Retained<ProtocolObject<dyn MTLBuffer>>§e: Retained<ProtocolObject<dyn MTLBuffer>>§hyper: Retained<ProtocolObject<dyn MTLBuffer>>§hc: HcBufs§la: HcBufs§mix_out: Retained<ProtocolObject<dyn MTLBuffer>>§qg: Retained<ProtocolObject<dyn MTLBuffer>>§k: Retained<ProtocolObject<dyn MTLBuffer>>§v: Retained<ProtocolObject<dyn MTLBuffer>>§attn_out: Retained<ProtocolObject<dyn MTLBuffer>>§attn_parts: Retained<ProtocolObject<dyn MTLBuffer>>§qkv: Retained<ProtocolObject<dyn MTLBuffer>>§z: Retained<ProtocolObject<dyn MTLBuffer>>§a: Retained<ProtocolObject<dyn MTLBuffer>>§b: Retained<ProtocolObject<dyn MTLBuffer>>§kqn: Retained<ProtocolObject<dyn MTLBuffer>>§gbuf: Retained<ProtocolObject<dyn MTLBuffer>>§delta_y: Retained<ProtocolObject<dyn MTLBuffer>>§router: Retained<ProtocolObject<dyn MTLBuffer>>§topk_idx: Retained<ProtocolObject<dyn MTLBuffer>>§topk_w: Retained<ProtocolObject<dyn MTLBuffer>>§la_router: Retained<ProtocolObject<dyn MTLBuffer>>§la_idx: Retained<ProtocolObject<dyn MTLBuffer>>§la_w: Retained<ProtocolObject<dyn MTLBuffer>>§gate_e: Retained<ProtocolObject<dyn MTLBuffer>>§hx: HalfSet§y_e: Retained<ProtocolObject<dyn MTLBuffer>>§moe_out: Retained<ProtocolObject<dyn MTLBuffer>>§ple_key: Retained<ProtocolObject<dyn MTLBuffer>>§ple_keyn: Retained<ProtocolObject<dyn MTLBuffer>>§ple_value: Retained<ProtocolObject<dyn MTLBuffer>>§ple_query: Retained<ProtocolObject<dyn MTLBuffer>>§ple_gated: Retained<ProtocolObject<dyn MTLBuffer>>§ple_gvn: Retained<ProtocolObject<dyn MTLBuffer>>§ple_out: Retained<ProtocolObject<dyn MTLBuffer>>§logits: Retained<ProtocolObject<dyn MTLBuffer>>§mtp_logits: Retained<ProtocolObject<dyn MTLBuffer>>§mtp_logits2: Retained<ProtocolObject<dyn MTLBuffer>>Logits of chained (single-row) MTP passes, kept apart so the first pass’s rows stay readable for checks.
partials: Retained<ProtocolObject<dyn MTLBuffer>>§mtp_hyper: Retained<ProtocolObject<dyn MTLBuffer>>§fe: Retained<ProtocolObject<dyn MTLBuffer>>§fh: Retained<ProtocolObject<dyn MTLBuffer>>§iqk: Retained<ProtocolObject<dyn MTLBuffer>>Indexer: projection [nb][qk_dim], roped queries [nb][inh*ihd],
block scores [nb][max_blocks], visible tokens [nb][vis_stride].
iq: Retained<ProtocolObject<dyn MTLBuffer>>§bscore: Retained<ProtocolObject<dyn MTLBuffer>>§vis: Retained<ProtocolObject<dyn MTLBuffer>>§nvis: Retained<ProtocolObject<dyn MTLBuffer>>§vmask: Retained<ProtocolObject<dyn MTLBuffer>>Auto Trait Implementations§
impl !RefUnwindSafe for Scratch
impl !Send for Scratch
impl !Sync for Scratch
impl !UnwindSafe for Scratch
impl Freeze for Scratch
impl Unpin for Scratch
impl UnsafeUnpin for Scratch
Blanket Implementations§
impl<T> AutoreleaseSafe for Twhere
T: ?Sized,
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
impl<T> ErasedDestructor for Twhere
T: 'static,
§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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