pub struct SimdOps { /* private fields */ }Available on crate feature
simd only.Expand description
SIMD-optimized operations interface
Implementations§
Source§impl SimdOps
impl SimdOps
Sourcepub fn features(&self) -> &CpuFeatures
pub fn features(&self) -> &CpuFeatures
Get detected CPU features
Sourcepub fn crc32(&self, data: &[u8], initial: u32) -> u32
pub fn crc32(&self, data: &[u8], initial: u32) -> u32
Hardware-accelerated CRC32 calculation
Uses SSE4.2 CRC32 instruction when available, falls back to scalar implementation. Processes data in 8-byte chunks for maximum efficiency.
Sourcepub fn hash_string_simd(&self, data: &[u8], hash_type: u32) -> u32
pub fn hash_string_simd(&self, data: &[u8], hash_type: u32) -> u32
SIMD-accelerated hash computation for file lookups
Optimizes hash computation for batch processing of multiple filenames. Uses AVX2 on x86-64 or NEON on ARM64 when available.
Sourcepub fn jenkins_hash_batch(&self, filenames: &[&str]) -> Vec<u64>
pub fn jenkins_hash_batch(&self, filenames: &[&str]) -> Vec<u64>
SIMD-accelerated Jenkins hash for batch processing
Optimizes Jenkins one-at-a-time hash for processing multiple files.
Sourcepub fn has_simd_support(&self) -> bool
pub fn has_simd_support(&self) -> bool
Check if any SIMD optimizations are available
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SimdOps
impl RefUnwindSafe for SimdOps
impl Send for SimdOps
impl Sync for SimdOps
impl Unpin for SimdOps
impl UnwindSafe for SimdOps
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