velesdb-core 1.13.1

High-performance vector database engine written in Rust
Documentation
use crate::internal_bench;
use crate::simd_native::{cosine_similarity_native, DistanceEngine};

fn sample_vectors(dim: usize) -> (Vec<f32>, Vec<f32>) {
    let a = (0..dim)
        .map(|i| {
            let idx = f32::from(u16::try_from(i).expect("test dimensions fit in u16"));
            (idx * 0.13).sin()
        })
        .collect();
    let b = (0..dim)
        .map(|i| {
            let idx = f32::from(u16::try_from(i).expect("test dimensions fit in u16"));
            (idx * 0.17 + 1.0).cos()
        })
        .collect();
    (a, b)
}

#[test]
fn test_internal_bench_cosine_paths_match_public_dispatch() {
    for dim in [0_usize, 1, 7, 8, 63, 64, 127, 128, 767, 768, 769, 1536] {
        let (a, b) = sample_vectors(dim);
        let dispatch = cosine_similarity_native(&a, &b);
        let scalar = internal_bench::cosine_scalar(&a, &b);
        let resolved = internal_bench::cosine_resolved(&a, &b);
        assert!((dispatch - scalar).abs() <= 1e-5, "dim={dim}");
        assert!((dispatch - resolved).abs() <= 1e-5, "dim={dim}");
    }
}

#[test]
fn test_internal_bench_distance_engine_matches_public_engine() {
    for dim in [64_usize, 768, 1536] {
        let (a, b) = sample_vectors(dim);
        let public_engine = DistanceEngine::new(dim);
        let internal = internal_bench::cosine_resolved(&a, &b);
        let public = public_engine.cosine_similarity(&a, &b);
        assert!((internal - public).abs() <= 1e-5, "dim={dim}");
    }
}