pub struct AdvancedSimdAccelerator<F: IntegrateFloat> { /* private fields */ }Expand description
Optimized SIMD acceleration engine
Implementations§
Source§impl<F: IntegrateFloat + SimdUnifiedOps> AdvancedSimdAccelerator<F>
impl<F: IntegrateFloat + SimdUnifiedOps> AdvancedSimdAccelerator<F>
Sourcepub fn new() -> IntegrateResult<Self>
pub fn new() -> IntegrateResult<Self>
Create a new advanced-SIMD accelerator
Sourcepub fn advanced_vector_add_fma(
&self,
a: &ArrayView1<'_, F>,
b: &ArrayView1<'_, F>,
c: &ArrayView1<'_, F>,
scale: F,
) -> IntegrateResult<Array1<F>>
pub fn advanced_vector_add_fma( &self, a: &ArrayView1<'_, F>, b: &ArrayView1<'_, F>, c: &ArrayView1<'_, F>, scale: F, ) -> IntegrateResult<Array1<F>>
Advanced-optimized vector addition with FMA
Sourcepub fn advanced_matrix_vector_multiply(
&self,
matrix: &Array2<F>,
vector: &ArrayView1<'_, F>,
) -> IntegrateResult<Array1<F>>
pub fn advanced_matrix_vector_multiply( &self, matrix: &Array2<F>, vector: &ArrayView1<'_, F>, ) -> IntegrateResult<Array1<F>>
Optimized matrix-vector multiplication with cache blocking
Sourcepub fn advanced_dot_product(
&self,
a: &ArrayView1<'_, F>,
b: &ArrayView1<'_, F>,
) -> IntegrateResult<F>
pub fn advanced_dot_product( &self, a: &ArrayView1<'_, F>, b: &ArrayView1<'_, F>, ) -> IntegrateResult<F>
Advanced-optimized dot product with multiple accumulation
Sourcepub fn advanced_reduce_sum(
&self,
data: &ArrayView1<'_, F>,
) -> IntegrateResult<F>
pub fn advanced_reduce_sum( &self, data: &ArrayView1<'_, F>, ) -> IntegrateResult<F>
Optimized reduction operations with tree reduction
Sourcepub fn advanced_elementwise_conditional(
&self,
a: &ArrayView1<'_, F>,
b: &ArrayView1<'_, F>,
condition: impl Fn(F, F) -> bool,
true_op: impl Fn(F, F) -> F,
false_op: impl Fn(F, F) -> F,
) -> IntegrateResult<Array1<F>>
pub fn advanced_elementwise_conditional( &self, a: &ArrayView1<'_, F>, b: &ArrayView1<'_, F>, condition: impl Fn(F, F) -> bool, true_op: impl Fn(F, F) -> F, false_op: impl Fn(F, F) -> F, ) -> IntegrateResult<Array1<F>>
Advanced-optimized element-wise operations with predication
Sourcepub fn advanced_gather(
&self,
data: &ArrayView1<'_, F>,
indices: &[usize],
) -> IntegrateResult<Array1<F>>
pub fn advanced_gather( &self, data: &ArrayView1<'_, F>, indices: &[usize], ) -> IntegrateResult<Array1<F>>
Optimized gather operation for sparse access patterns
Sourcepub fn advanced_rk4_vectorized(
&self,
t: F,
y: &ArrayView1<'_, F>,
h: F,
f: impl Fn(F, &ArrayView1<'_, F>) -> IntegrateResult<Array1<F>>,
) -> IntegrateResult<Array1<F>>
pub fn advanced_rk4_vectorized( &self, t: F, y: &ArrayView1<'_, F>, h: F, f: impl Fn(F, &ArrayView1<'_, F>) -> IntegrateResult<Array1<F>>, ) -> IntegrateResult<Array1<F>>
Advanced-optimized Runge-Kutta step with vectorized stages
Sourcepub fn advanced_mixed_precision_step(
&self,
high_precisiondata: &ArrayView1<'_, F>,
operation: MixedPrecisionOperation,
) -> IntegrateResult<Array1<F>>
pub fn advanced_mixed_precision_step( &self, high_precisiondata: &ArrayView1<'_, F>, operation: MixedPrecisionOperation, ) -> IntegrateResult<Array1<F>>
Mixed-precision computation for enhanced performance
Auto Trait Implementations§
impl<F> Freeze for AdvancedSimdAccelerator<F>where
F: Freeze,
impl<F> RefUnwindSafe for AdvancedSimdAccelerator<F>where
F: RefUnwindSafe,
impl<F> Send for AdvancedSimdAccelerator<F>where
F: Send,
impl<F> Sync for AdvancedSimdAccelerator<F>where
F: Sync,
impl<F> Unpin for AdvancedSimdAccelerator<F>where
F: Unpin,
impl<F> UnsafeUnpin for AdvancedSimdAccelerator<F>where
F: UnsafeUnpin,
impl<F> UnwindSafe for AdvancedSimdAccelerator<F>where
F: UnwindSafe,
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