mul_simd

Function mul_simd 

Source
pub fn mul_simd<F>(a: &ArrayView1<'_, F>, b: &ArrayView1<'_, F>) -> Array1<F>
where F: Float + SimdUnifiedOps,
Expand description

SIMD-accelerated element-wise multiplication

Computes a * b element-wise (Hadamard product).

§Arguments

  • a - First array
  • b - Second array

§Returns

Element-wise product

§Examples

use scirs2_core::ndarray::array;
use scirs2_core::ndarray_ext::elementwise::mul_simd;

let a = array![2.0_f64, 3.0, 4.0];
let b = array![5.0_f64, 6.0, 7.0];
let c = mul_simd::<f64>(&a.view(), &b.view());
assert!((c[0] - 10.0).abs() < 1e-14);
assert!((c[1] - 18.0).abs() < 1e-14);
assert!((c[2] - 28.0).abs() < 1e-14);

§Use Cases

  • Attention weights application
  • Feature gating
  • Gradient scaling
  • Signal modulation