pub struct SumSquare<'a> { /* private fields */ }Expand description
Computes the sum of squares of a sequence of numbers.
This is conceptually equivalent to slice.iter().map(|&x| x * x).sum() but
more efficient as it computes multiple partial sums in parallel using SIMD
and then sums across the SIMD lanes at the end. This will produce very
slightly different results because the additions are happening in a
different order.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl<'a> Freeze for SumSquare<'a>
impl<'a> RefUnwindSafe for SumSquare<'a>
impl<'a> Send for SumSquare<'a>
impl<'a> Sync for SumSquare<'a>
impl<'a> Unpin for SumSquare<'a>
impl<'a> UnwindSafe for SumSquare<'a>
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
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