pub struct Fp8Scratch {
pub xq: CudaSlice<u8>,
pub scales: CudaSlice<f32>,
pub ws: CudaSlice<u8>,
/* private fields */
}Expand description
Resident scratch for the FP8 prefill GEMM (mirrors CutlassScratch): the quantized activation
(grown to the largest m*k seen), the 4-float scale block ([0]=amax, [1]=quant mul, [2]=folded
B_SCALE — the GEMM desc holds a POINTER to slot 2, so the buffer must be resident/stable), and
the cuBLASLt workspace (64MB, the probe’s size). Single GPU worker => no concurrent use; the
Mutex guards lazy build/grow only (matches moe_cache / cutlass_scratch).
Fields§
§xq: CudaSlice<u8>§scales: CudaSlice<f32>§ws: CudaSlice<u8>Auto Trait Implementations§
impl Freeze for Fp8Scratch
impl RefUnwindSafe for Fp8Scratch
impl Send for Fp8Scratch
impl Sync for Fp8Scratch
impl Unpin for Fp8Scratch
impl UnsafeUnpin for Fp8Scratch
impl UnwindSafe for Fp8Scratch
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
Mutably borrows from an owned value. Read more