pub type TwoSeedBatch<const K: usize> = TwoSeedLane<f64x4, K>;Expand description
The 4-rows-per-pass batched two-seed scalar (wide::f64x4 lanes).
Aliased Type§
pub struct TwoSeedBatch<const K: usize> {
pub base: Order2Lane<f64x4, K>,
pub eps: Order2Lane<f64x4, K>,
pub del: Order2Lane<f64x4, K>,
pub eps_del: Order2Lane<f64x4, K>,
}Fields§
§base: Order2Lane<f64x4, K>The ε⁰δ⁰ part.
eps: Order2Lane<f64x4, K>The ε¹δ⁰ part.
del: Order2Lane<f64x4, K>The ε⁰δ¹ part.
eps_del: Order2Lane<f64x4, K>The ε¹δ¹ part. After a seed(u, v) evaluation, eps_del.h[a][b]
lane i is row i’s Σ_{cd} ℓ_{abcd} u_c v_d.
Implementations§
Source§impl<const K: usize> TwoSeedBatch<K>
impl<const K: usize> TwoSeedBatch<K>
Sourcepub fn lane(&self, i: usize) -> TwoSeed<K>
pub fn lane(&self, i: usize) -> TwoSeed<K>
Extract lane i’s parts as a production TwoSeed<K>. Lane i is
to_bits-identical to evaluating the same program at TwoSeed<K> on
row i (see batch_tests).