pub struct Avx2Kernel;Trait Implementations§
Source§impl DistanceKernel for Avx2Kernel
Available on x86-64 only.
impl DistanceKernel for Avx2Kernel
Available on x86-64 only.
Source§fn l2_squared_f32(&self, a: &[f32], b: &[f32]) -> f32
fn l2_squared_f32(&self, a: &[f32], b: &[f32]) -> f32
Compute L2 squared distance between two f32 vectors
Source§fn dot_i8(&self, a: &[i8], b: &[i8]) -> i32
fn dot_i8(&self, a: &[i8], b: &[i8]) -> i32
Compute dot product of two i8 vectors (returns i32)
Source§fn l2_squared_batch_f32(
&self,
query: &[f32],
vectors: &[f32],
dim: usize,
out: &mut [f32],
)
fn l2_squared_batch_f32( &self, query: &[f32], vectors: &[f32], dim: usize, out: &mut [f32], )
Batch L2 squared: query vs multiple vectors
Source§fn dot_batch_f32(
&self,
query: &[f32],
vectors: &[f32],
dim: usize,
out: &mut [f32],
)
fn dot_batch_f32( &self, query: &[f32], vectors: &[f32], dim: usize, out: &mut [f32], )
Batch dot product: query vs multiple vectors
Source§fn simd_level(&self) -> SimdLevel
fn simd_level(&self) -> SimdLevel
SIMD level of this kernel
Auto Trait Implementations§
impl Freeze for Avx2Kernel
impl RefUnwindSafe for Avx2Kernel
impl Send for Avx2Kernel
impl Sync for Avx2Kernel
impl Unpin for Avx2Kernel
impl UnsafeUnpin for Avx2Kernel
impl UnwindSafe for Avx2Kernel
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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