pub struct HadamardTransformSpec {
pub block_size: NonZeroU32,
pub signs: HadamardSigns,
pub application: HadamardApplication,
}Expand description
Normalized, blockwise Sylvester Walsh-Hadamard on the complete last axis.
For block width B, H[i,j] = (-1)^popcount(i & j) / sqrt(B). Providers perform butterflies, normalization and intermediate storage in F32; no F16 narrowing is allowed between this transform and its matrix projection. Embedding output is converted only after H and output signs. The logical operation’s output dtype remains its declared dtype.
Fields§
§block_size: NonZeroU32§signs: HadamardSigns§application: HadamardApplicationImplementations§
Trait Implementations§
Source§impl Clone for HadamardTransformSpec
impl Clone for HadamardTransformSpec
Source§fn clone(&self) -> HadamardTransformSpec
fn clone(&self) -> HadamardTransformSpec
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 HadamardTransformSpec
impl Debug for HadamardTransformSpec
Source§impl<'de> Deserialize<'de> for HadamardTransformSpec
impl<'de> Deserialize<'de> for HadamardTransformSpec
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 HadamardTransformSpec
Source§impl PartialEq for HadamardTransformSpec
impl PartialEq for HadamardTransformSpec
Source§impl Serialize for HadamardTransformSpec
impl Serialize for HadamardTransformSpec
impl StructuralPartialEq for HadamardTransformSpec
Auto Trait Implementations§
impl Freeze for HadamardTransformSpec
impl RefUnwindSafe for HadamardTransformSpec
impl Send for HadamardTransformSpec
impl Sync for HadamardTransformSpec
impl Unpin for HadamardTransformSpec
impl UnsafeUnpin for HadamardTransformSpec
impl UnwindSafe for HadamardTransformSpec
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