Skip to main content

Crate varpulis_simd

Crate varpulis_simd 

Source
Expand description

SIMD-optimized operations for high-performance event processing

This crate provides vectorized implementations of common operations:

  • Aggregations (sum, min, max, avg)
  • Batch comparisons for filtering
  • Field extraction to contiguous arrays
  • Incremental aggregation accumulators

Structs§

IncrementalMinMax
Incremental min/max tracker using BTreeMap for O(log n) operations
IncrementalSum
Incremental sum accumulator - O(1) updates instead of O(n) recomputation

Functions§

compare_gt_f64
SIMD-optimized greater-than comparison Returns a bitmask where bit i is set if values[i] > threshold
compare_lt_f64
SIMD-optimized less-than comparison
extract_field_f64
Extract float field values from events into a contiguous array Returns None values as NaN for SIMD processing
extract_field_f64_filtered
Extract float field values from events, filtering out None values Returns (values, indices) where indices maps back to original positions
max_f64
SIMD-optimized max of f64 values
min_f64
SIMD-optimized min of f64 values
simd_avg
Compute avg of a field across events using SIMD
simd_max
Compute max of a field across events using SIMD
simd_min
Compute min of a field across events using SIMD
simd_sum
Compute sum of a field across events using SIMD
sum_f64
SIMD-optimized sum of f64 values Uses AVX2 (256-bit) when available, falls back to scalar