pub enum StaticWeightTransformPlan {
BlockFp8ToMarlinFp8Group128 {
source_values_id: WeightId,
source_scales_id: WeightId,
packed_values_id: WeightId,
scales_id: WeightId,
logical_dimensions: Vec<u64>,
matrices_per_output: u32,
},
GptOssMxfp4ToMarlin {
source_blocks_id: WeightId,
source_scales_id: WeightId,
packed_values_id: WeightId,
scales_id: WeightId,
logical_dimensions: Vec<u64>,
execution_dimensions: Vec<u64>,
},
}Expand description
One required cold-path device transform from source checkpoint components into final execution-weight components.
The first supported producer preserves official E4M3 bytes, converts the
BF16 inverse-scale grid into Marlin’s grouped F16 scale ABI, and repacks one
logical matrix at a time. matrices_per_output == 2 represents the routed
gate/up fusion [E, 2, N, K] -> [E, 2N, K]; all other projections use one.
Variants§
Implementations§
Source§impl StaticWeightTransformPlan
impl StaticWeightTransformPlan
pub fn source_component_ids(&self) -> [&WeightId; 2]
pub fn execution_component_ids(&self) -> [&WeightId; 2]
pub fn logical_dimensions(&self) -> &[u64]
Sourcepub fn execution_dimensions(&self) -> &[u64]
pub fn execution_dimensions(&self) -> &[u64]
Matrix dimensions consumed by the native execution kernel after any explicitly typed cold-path padding. Block-FP8 transforms are exact; GPT-OSS MXFP4 may zero-extend only K to a supported Marlin tile.
pub const fn matrices_per_output(&self) -> u32
Sourcepub fn scratch_bytes(&self) -> Result<u64, VNextError>
pub fn scratch_bytes(&self) -> Result<u64, VNextError>
Device scratch is shared across transforms and sized for the largest single fused output matrix, never for the model or expert count.
Trait Implementations§
Source§impl Clone for StaticWeightTransformPlan
impl Clone for StaticWeightTransformPlan
Source§fn clone(&self) -> StaticWeightTransformPlan
fn clone(&self) -> StaticWeightTransformPlan
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for StaticWeightTransformPlan
impl Debug for StaticWeightTransformPlan
Source§impl<'de> Deserialize<'de> for StaticWeightTransformPlan
impl<'de> Deserialize<'de> for StaticWeightTransformPlan
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for StaticWeightTransformPlan
Source§impl Ord for StaticWeightTransformPlan
impl Ord for StaticWeightTransformPlan
Source§fn cmp(&self, other: &StaticWeightTransformPlan) -> Ordering
fn cmp(&self, other: &StaticWeightTransformPlan) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the minimum of two values. Read more
Source§impl PartialOrd for StaticWeightTransformPlan
impl PartialOrd for StaticWeightTransformPlan
impl StructuralPartialEq for StaticWeightTransformPlan
Auto Trait Implementations§
impl Freeze for StaticWeightTransformPlan
impl RefUnwindSafe for StaticWeightTransformPlan
impl Send for StaticWeightTransformPlan
impl Sync for StaticWeightTransformPlan
impl Unpin for StaticWeightTransformPlan
impl UnsafeUnpin for StaticWeightTransformPlan
impl UnwindSafe for StaticWeightTransformPlan
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