pub struct CacheAwareAlgorithms;Expand description
Cache-aware algorithms for common operations
Implementations§
Source§impl CacheAwareAlgorithms
impl CacheAwareAlgorithms
Sourcepub fn transpose<F: IntegrateFloat>(
input: ArrayView2<'_, F>,
output: ArrayViewMut2<'_, F>,
block_size: usize,
)
pub fn transpose<F: IntegrateFloat>( input: ArrayView2<'_, F>, output: ArrayViewMut2<'_, F>, block_size: usize, )
Cache-friendly matrix transpose
Sourcepub fn vector_add_blocked<F: IntegrateFloat>(
a: ArrayView1<'_, F>,
b: ArrayView1<'_, F>,
c: ArrayViewMut1<'_, F>,
block_size: usize,
)
pub fn vector_add_blocked<F: IntegrateFloat>( a: ArrayView1<'_, F>, b: ArrayView1<'_, F>, c: ArrayViewMut1<'_, F>, block_size: usize, )
Cache-friendly vector operations with temporal locality
Sourcepub fn reduction_blocked<F: IntegrateFloat>(
data: ArrayView1<'_, F>,
blocksize: usize,
) -> F
pub fn reduction_blocked<F: IntegrateFloat>( data: ArrayView1<'_, F>, blocksize: usize, ) -> F
Memory-efficient reduction with minimal cache misses
Auto Trait Implementations§
impl Freeze for CacheAwareAlgorithms
impl RefUnwindSafe for CacheAwareAlgorithms
impl Send for CacheAwareAlgorithms
impl Sync for CacheAwareAlgorithms
impl Unpin for CacheAwareAlgorithms
impl UnwindSafe for CacheAwareAlgorithms
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