[INFO] fetching crate sochdb-index 2.0.0... [INFO] testing sochdb-index-2.0.0 against 1.95.0 for beta-1.96-1 [INFO] extracting crate sochdb-index 2.0.0 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate sochdb-index 2.0.0 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate sochdb-index 2.0.0 [INFO] tweaked toml for crates.io crate sochdb-index 2.0.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate sochdb-index 2.0.0 on toolchain 1.95.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate sochdb-index 2.0.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded aws-smithy-query v0.60.15 [INFO] [stderr] Downloaded macro_rules_attribute v0.2.2 [INFO] [stderr] Downloaded socks v0.3.4 [INFO] [stderr] Downloaded macro_rules_attribute-proc_macro v0.2.2 [INFO] [stderr] Downloaded aws-smithy-observability v0.2.6 [INFO] [stderr] Downloaded rayon-cond v0.4.0 [INFO] [stderr] Downloaded dary_heap v0.3.8 [INFO] [stderr] Downloaded arrow-string v54.3.1 [INFO] [stderr] Downloaded hf-hub v0.4.3 [INFO] [stderr] Downloaded arrow-arith v54.3.1 [INFO] [stderr] Downloaded arrow-buffer v54.3.1 [INFO] [stderr] Downloaded arrow-cast v54.3.1 [INFO] [stderr] Downloaded arrow-ipc v54.3.1 [INFO] [stderr] Downloaded aws-smithy-runtime v1.10.3 [INFO] [stderr] Downloaded actix-http v3.12.0 [INFO] [stderr] Downloaded esaxx-rs v0.1.10 [INFO] [stderr] Downloaded aws-config v1.8.15 [INFO] [stderr] Downloaded tokenizers v0.21.4 [INFO] [stderr] Downloaded aws-sdk-sts v1.101.0 [INFO] [stderr] Downloaded arrow-array v54.3.1 [INFO] [stderr] Downloaded sochdb-core v2.0.0 [INFO] [stderr] Downloaded llm v1.3.7 [INFO] [stderr] Downloaded aws-sdk-bedrockruntime v1.129.0 [INFO] [stderr] Downloaded openssl v0.10.77 [INFO] [stderr] Downloaded awc v3.8.2 [INFO] [stderr] Downloaded aws-sigv4 v1.4.2 [INFO] [stderr] Downloaded aws-smithy-http-client v1.1.12 [INFO] [stderr] Downloaded rustyline v15.0.0 [INFO] [stderr] Downloaded fastembed v4.9.1 [INFO] [stderr] Downloaded tower-http v0.5.2 [INFO] [stderr] Downloaded aws-sdk-sso v1.97.0 [INFO] [stderr] Downloaded aws-sdk-ssooidc v1.99.0 [INFO] [stderr] Downloaded aws-smithy-runtime-api v1.11.6 [INFO] [stderr] Downloaded aws-smithy-types v1.4.7 [INFO] [stderr] Downloaded spm_precompiled v0.1.4 [INFO] [stderr] Downloaded arrow-select v54.3.1 [INFO] [stderr] Downloaded arrow v54.3.1 [INFO] [stderr] Downloaded bitstream-io v4.10.0 [INFO] [stderr] Downloaded ort v2.0.0-rc.9 [INFO] [stderr] Downloaded aws-runtime v1.7.2 [INFO] [stderr] Downloaded toon-format v0.4.5 [INFO] [stderr] Downloaded arrow-ord v54.3.1 [INFO] [stderr] Downloaded arrow-row v54.3.1 [INFO] [stderr] Downloaded arrow-data v54.3.1 [INFO] [stderr] Downloaded arrow-schema v54.3.1 [INFO] [stderr] Downloaded actix-tls v3.5.0 [INFO] [stderr] Downloaded aws-smithy-json v0.62.5 [INFO] [stderr] Downloaded openssl-sys v0.9.113 [INFO] [stderr] Downloaded aws-smithy-http v0.63.6 [INFO] [stderr] Downloaded aws-types v1.3.14 [INFO] [stderr] Downloaded no_std_io2 v0.9.3 [INFO] [stderr] Downloaded ort-sys v2.0.0-rc.9 [INFO] [stderr] Downloaded aws-credential-types v1.2.14 [INFO] [stderr] Downloaded aws-smithy-async v1.2.14 [INFO] [stderr] Downloaded actix-rt v2.11.0 [INFO] [stderr] Downloaded aws-smithy-xml v0.60.15 [INFO] [stderr] Downloaded aws-smithy-eventstream v0.60.20 [INFO] [stderr] Downloaded tokio v1.52.0 [INFO] [stderr] Downloaded bytestring v1.5.0 [INFO] [stderr] Downloaded monostate-impl v0.1.18 [INFO] [stderr] Downloaded monostate v0.1.18 [INFO] [stderr] Downloaded spinners v4.2.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c1af8f0658cc5ccb5902cd9e17194517ee1277dce1a352bc9fec7d5388a0bce9 [INFO] running `Command { std: "docker" "start" "-a" "c1af8f0658cc5ccb5902cd9e17194517ee1277dce1a352bc9fec7d5388a0bce9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c1af8f0658cc5ccb5902cd9e17194517ee1277dce1a352bc9fec7d5388a0bce9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c1af8f0658cc5ccb5902cd9e17194517ee1277dce1a352bc9fec7d5388a0bce9", kill_on_drop: false }` [INFO] [stdout] c1af8f0658cc5ccb5902cd9e17194517ee1277dce1a352bc9fec7d5388a0bce9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f5357ad641528a2d0471b7918cd5e25c4f9945444d8ee14051b5ddda24fcdaf0 [INFO] running `Command { std: "docker" "start" "-a" "f5357ad641528a2d0471b7918cd5e25c4f9945444d8ee14051b5ddda24fcdaf0", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.185 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling zerocopy v0.8.48 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling arrow-schema v54.3.1 [INFO] [stderr] Compiling zerocopy-derive v0.8.48 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling hashbrown v0.15.5 [INFO] [stderr] Compiling lexical-util v1.0.7 [INFO] [stderr] Compiling semver v1.0.28 [INFO] [stderr] Compiling lexical-parse-integer v1.0.6 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling lexical-write-integer v1.0.6 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling flatbuffers v24.12.23 [INFO] [stderr] Compiling regex-syntax v0.8.10 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling lexical-write-float v1.0.6 [INFO] [stderr] Compiling getrandom v0.4.2 [INFO] [stderr] Compiling lexical-parse-float v1.0.6 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling matrixmultiply v0.3.10 [INFO] [stderr] Compiling portable-atomic v1.13.1 [INFO] [stderr] Compiling jobserver v0.1.34 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling cc v1.2.60 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling lexical-core v1.0.6 [INFO] [stderr] Compiling atoi v2.0.0 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling prometheus v0.14.0 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling zstd-sys v2.0.16+zstd.1.5.7 [INFO] [stderr] Compiling num v0.4.3 [INFO] [stderr] Compiling lz4-sys v1.11.1+lz4-1.10.0 [INFO] [stderr] Compiling blake3 v1.8.4 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling dirs-sys v0.4.1 [INFO] [stderr] Compiling dashmap v5.5.3 [INFO] [stderr] Compiling toon-format v0.4.5 [INFO] [stderr] Compiling rayon-core v1.13.0 [INFO] [stderr] Compiling uuid v1.23.1 [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stderr] Compiling crossbeam-channel v0.5.15 [INFO] [stderr] Compiling tagptr v0.2.0 [INFO] [stderr] Compiling rayon v1.12.0 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling arrow-buffer v54.3.1 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling moka v0.12.15 [INFO] [stderr] Compiling arrow-data v54.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling ndarray v0.15.6 [INFO] [stderr] Compiling dirs v5.0.1 [INFO] [stderr] Compiling memmap2 v0.9.10 [INFO] [stderr] Compiling ordered-float v4.6.0 [INFO] [stderr] Compiling arrow-array v54.3.1 [INFO] [stderr] Compiling array-init v2.1.0 [INFO] [stderr] Compiling arrow-select v54.3.1 [INFO] [stderr] Compiling arrow-ipc v54.3.1 [INFO] [stderr] Compiling arrow-arith v54.3.1 [INFO] [stderr] Compiling zstd-safe v7.2.4 [INFO] [stderr] Compiling zstd v0.13.3 [INFO] [stderr] Compiling arrow-ord v54.3.1 [INFO] [stderr] Compiling arrow-string v54.3.1 [INFO] [stderr] Compiling arrow-cast v54.3.1 [INFO] [stderr] Compiling arrow-row v54.3.1 [INFO] [stderr] Compiling arrow v54.3.1 [INFO] [stderr] Compiling lz4 v1.28.1 [INFO] [stderr] Compiling sochdb-core v2.0.0 [INFO] [stderr] Compiling sochdb-index v2.0.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `PROFILE_COLLECTOR` [INFO] [stdout] --> src/hnsw.rs:3301:54 [INFO] [stdout] | [INFO] [stdout] 3301 | use crate::profiling::{is_profiling_enabled, PROFILE_COLLECTOR}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::BinaryHeap` [INFO] [stdout] --> src/hnsw.rs:4689:13 [INFO] [stdout] | [INFO] [stdout] 4689 | use std::collections::BinaryHeap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::BinaryHeap` [INFO] [stdout] --> src/hnsw.rs:4849:13 [INFO] [stdout] | [INFO] [stdout] 4849 | use std::collections::BinaryHeap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5068:15 [INFO] [stdout] | [INFO] [stdout] 5068 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5070:15 [INFO] [stdout] | [INFO] [stdout] 5070 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5073:15 [INFO] [stdout] | [INFO] [stdout] 5073 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5258:15 [INFO] [stdout] | [INFO] [stdout] 5258 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5262:15 [INFO] [stdout] | [INFO] [stdout] 5262 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5077:19 [INFO] [stdout] | [INFO] [stdout] 5077 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5151:19 [INFO] [stdout] | [INFO] [stdout] 5151 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5154:19 [INFO] [stdout] | [INFO] [stdout] 5154 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Reverse` [INFO] [stdout] --> src/hnsw.rs:5747:13 [INFO] [stdout] | [INFO] [stdout] 5747 | use std::cmp::Reverse; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:137:16 [INFO] [stdout] | [INFO] [stdout] 137 | data: [u8; VECTOR_DIM], [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:140:18 [INFO] [stdout] | [INFO] [stdout] 140 | impl Default for QuantizedVector { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:148:6 [INFO] [stdout] | [INFO] [stdout] 148 | impl QuantizedVector { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:143:23 [INFO] [stdout] | [INFO] [stdout] 143 | data: [0; VECTOR_DIM], [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | VECTOR_DIM, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:163:13 [INFO] [stdout] | [INFO] [stdout] 163 | VECTOR_DIM, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:166:30 [INFO] [stdout] | [INFO] [stdout] 166 | let mut data = [0u8; VECTOR_DIM]; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:176:21 [INFO] [stdout] | [INFO] [stdout] 176 | for i in 0..VECTOR_DIM { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | data: [0; VECTOR_DIM], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:171:16 [INFO] [stdout] | [INFO] [stdout] 171 | Self { data } [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:177:24 [INFO] [stdout] | [INFO] [stdout] 177 | let diff = self.data[i] as i32 - other.data[i] as i32; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:177:46 [INFO] [stdout] | [INFO] [stdout] 177 | let diff = self.data[i] as i32 - other.data[i] as i32; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lockfree_hnsw::AtomicNeighborList::update`: Use update_reclaim() with a UnifiedReclaimer instead — this method leaks memory [INFO] [stdout] --> src/lockfree_hnsw.rs:405:21 [INFO] [stdout] | [INFO] [stdout] 405 | if self.update(&mut mutator) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rayon::prelude` [INFO] [stdout] --> src/hnsw.rs:3444:13 [INFO] [stdout] | [INFO] [stdout] 3444 | use rayon::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:402:25 [INFO] [stdout] | [INFO] [stdout] 402 | let v_vec = _mm_loadu_ps(tile_ptr.add(d * T)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/aosoa_tiles.rs:384:5 [INFO] [stdout] | [INFO] [stdout] 384 | pub unsafe fn tile_l2_squared_avx2(&self, query: &[f32], tile_idx: usize) -> [f32; T] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:402:38 [INFO] [stdout] | [INFO] [stdout] 402 | let v_vec = _mm_loadu_ps(tile_ptr.add(d * T)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to function `std::arch::x86_64::_mm_fmadd_ps` with `#[target_feature]` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:404:19 [INFO] [stdout] | [INFO] [stdout] 404 | acc = _mm_fmadd_ps(diff, diff, acc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]` [INFO] [stdout] | [INFO] [stdout] = help: in order for the call to be safe, the context requires the following additional target feature: fma [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:408:9 [INFO] [stdout] | [INFO] [stdout] 408 | _mm_storeu_ps(dists.as_mut_ptr(), acc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node_dense` [INFO] [stdout] --> src/hnsw.rs:3081:25 [INFO] [stdout] | [INFO] [stdout] 3081 | let node_dense = node.dense_index; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_dense` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_neighbors` [INFO] [stdout] --> src/hnsw.rs:4887:29 [INFO] [stdout] | [INFO] [stdout] 4887 | let n_neighbors = neighbors.len(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_neighbors` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/hnsw.rs:4889:30 [INFO] [stdout] | [INFO] [stdout] 4889 | for (i, &neighbor_dense) in neighbors.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6453:9 [INFO] [stdout] | [INFO] [stdout] 6453 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6473:9 [INFO] [stdout] | [INFO] [stdout] 6473 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6613:9 [INFO] [stdout] | [INFO] [stdout] 6613 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6633:9 [INFO] [stdout] | [INFO] [stdout] 6633 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7044:22 [INFO] [stdout] | [INFO] [stdout] 7044 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7030:5 [INFO] [stdout] | [INFO] [stdout] 7030 | unsafe fn cosine_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7044:38 [INFO] [stdout] | [INFO] [stdout] 7044 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7045:22 [INFO] [stdout] | [INFO] [stdout] 7045 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7045:38 [INFO] [stdout] | [INFO] [stdout] 7045 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7054:19 [INFO] [stdout] | [INFO] [stdout] 7054 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7055:22 [INFO] [stdout] | [INFO] [stdout] 7055 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7056:22 [INFO] [stdout] | [INFO] [stdout] 7056 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7088:23 [INFO] [stdout] | [INFO] [stdout] 7088 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7069:5 [INFO] [stdout] | [INFO] [stdout] 7069 | unsafe fn cosine_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7088:39 [INFO] [stdout] | [INFO] [stdout] 7088 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7089:23 [INFO] [stdout] | [INFO] [stdout] 7089 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7089:39 [INFO] [stdout] | [INFO] [stdout] 7089 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7090:23 [INFO] [stdout] | [INFO] [stdout] 7090 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7090:39 [INFO] [stdout] | [INFO] [stdout] 7090 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7091:23 [INFO] [stdout] | [INFO] [stdout] 7091 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7091:39 [INFO] [stdout] | [INFO] [stdout] 7091 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7109:19 [INFO] [stdout] | [INFO] [stdout] 7109 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7110:22 [INFO] [stdout] | [INFO] [stdout] 7110 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7111:22 [INFO] [stdout] | [INFO] [stdout] 7111 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7143:23 [INFO] [stdout] | [INFO] [stdout] 7143 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7124:5 [INFO] [stdout] | [INFO] [stdout] 7124 | unsafe fn cosine_distance_avx2_unrolled_1536(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7143:39 [INFO] [stdout] | [INFO] [stdout] 7143 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7144:23 [INFO] [stdout] | [INFO] [stdout] 7144 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7144:39 [INFO] [stdout] | [INFO] [stdout] 7144 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7145:23 [INFO] [stdout] | [INFO] [stdout] 7145 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7145:39 [INFO] [stdout] | [INFO] [stdout] 7145 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7146:23 [INFO] [stdout] | [INFO] [stdout] 7146 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7146:39 [INFO] [stdout] | [INFO] [stdout] 7146 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7162:19 [INFO] [stdout] | [INFO] [stdout] 7162 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7163:22 [INFO] [stdout] | [INFO] [stdout] 7163 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7164:22 [INFO] [stdout] | [INFO] [stdout] 7164 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7187:22 [INFO] [stdout] | [INFO] [stdout] 7187 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7176:5 [INFO] [stdout] | [INFO] [stdout] 7176 | unsafe fn l2_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7187:38 [INFO] [stdout] | [INFO] [stdout] 7187 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7188:22 [INFO] [stdout] | [INFO] [stdout] 7188 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7188:38 [INFO] [stdout] | [INFO] [stdout] 7188 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7193:9 [INFO] [stdout] | [INFO] [stdout] 7193 | Self::horizontal_sum_avx2(sum).sqrt() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7209:22 [INFO] [stdout] | [INFO] [stdout] 7209 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7199:5 [INFO] [stdout] | [INFO] [stdout] 7199 | unsafe fn l2_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7209:38 [INFO] [stdout] | [INFO] [stdout] 7209 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7210:22 [INFO] [stdout] | [INFO] [stdout] 7210 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7210:38 [INFO] [stdout] | [INFO] [stdout] 7210 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7215:9 [INFO] [stdout] | [INFO] [stdout] 7215 | Self::horizontal_sum_avx2(sum).sqrt() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7231:22 [INFO] [stdout] | [INFO] [stdout] 7231 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7221:5 [INFO] [stdout] | [INFO] [stdout] 7221 | unsafe fn dot_product_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7231:38 [INFO] [stdout] | [INFO] [stdout] 7231 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7232:22 [INFO] [stdout] | [INFO] [stdout] 7232 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7232:38 [INFO] [stdout] | [INFO] [stdout] 7232 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7236:9 [INFO] [stdout] | [INFO] [stdout] 7236 | Self::horizontal_sum_avx2(sum) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reachable` [INFO] [stdout] --> src/hnsw.rs:8045:14 [INFO] [stdout] | [INFO] [stdout] 8045 | let (reachable, total, orphans) = self.diagnose_connectivity(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reachable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `total` [INFO] [stdout] --> src/hnsw.rs:8045:25 [INFO] [stdout] | [INFO] [stdout] 8045 | let (reachable, total, orphans) = self.diagnose_connectivity(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_total` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:431:22 [INFO] [stdout] | [INFO] [stdout] 431 | let va = _mm256_loadu_ps(a.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/optimized_search.rs:420:5 [INFO] [stdout] | [INFO] [stdout] 420 | unsafe fn euclidean_distance_avx2(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:431:38 [INFO] [stdout] | [INFO] [stdout] 431 | let va = _mm256_loadu_ps(a.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:432:22 [INFO] [stdout] | [INFO] [stdout] 432 | let vb = _mm256_loadu_ps(b.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:432:38 [INFO] [stdout] | [INFO] [stdout] 432 | let vb = _mm256_loadu_ps(b.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:389:22 [INFO] [stdout] | [INFO] [stdout] 389 | let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/unified_quant.rs:379:5 [INFO] [stdout] | [INFO] [stdout] 379 | unsafe fn dot_i8_avx2(a: &[i8], b: &[i8]) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:389:41 [INFO] [stdout] | [INFO] [stdout] 389 | let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:390:22 [INFO] [stdout] | [INFO] [stdout] 390 | let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:390:41 [INFO] [stdout] | [INFO] [stdout] 390 | let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:188:18 [INFO] [stdout] | [INFO] [stdout] 188 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:177:5 [INFO] [stdout] | [INFO] [stdout] 177 | unsafe fn blend_avx2(a: [f32; 4], b: [f32; 4], mask: SimdMask) -> [f32; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:189:18 [INFO] [stdout] | [INFO] [stdout] 189 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_si128` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:190:18 [INFO] [stdout] | [INFO] [stdout] 190 | let vm = _mm_loadu_si128(mask_expanded.as_ptr() as *const __m128i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:195:9 [INFO] [stdout] | [INFO] [stdout] 195 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:266:18 [INFO] [stdout] | [INFO] [stdout] 266 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | unsafe fn min_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:267:18 [INFO] [stdout] | [INFO] [stdout] 267 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:270:9 [INFO] [stdout] | [INFO] [stdout] 270 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:313:18 [INFO] [stdout] | [INFO] [stdout] 313 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:311:5 [INFO] [stdout] | [INFO] [stdout] 311 | unsafe fn max_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:314:18 [INFO] [stdout] | [INFO] [stdout] 314 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:317:9 [INFO] [stdout] | [INFO] [stdout] 317 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:474:18 [INFO] [stdout] | [INFO] [stdout] 474 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:459:5 [INFO] [stdout] | [INFO] [stdout] 459 | unsafe fn blend_avx2(a: [f32; 8], b: [f32; 8], mask: u8) -> [f32; 8] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:475:18 [INFO] [stdout] | [INFO] [stdout] 475 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:476:18 [INFO] [stdout] | [INFO] [stdout] 476 | let vm = _mm256_loadu_si256(mask_expanded.as_ptr() as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:481:9 [INFO] [stdout] | [INFO] [stdout] 481 | _mm256_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:507:18 [INFO] [stdout] | [INFO] [stdout] 507 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:505:5 [INFO] [stdout] | [INFO] [stdout] 505 | unsafe fn min_avx2(a: [f32; 8], b: [f32; 8]) -> [f32; 8] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:508:18 [INFO] [stdout] | [INFO] [stdout] 508 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:511:9 [INFO] [stdout] | [INFO] [stdout] 511 | _mm256_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:539:18 [INFO] [stdout] | [INFO] [stdout] 539 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:537:5 [INFO] [stdout] | [INFO] [stdout] 537 | unsafe fn cmp_lt_avx2(a: [f32; 8], b: [f32; 8]) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:540:18 [INFO] [stdout] | [INFO] [stdout] 540 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:132:21 [INFO] [stdout] | [INFO] [stdout] 132 | query_ptr.add(prefetch_d) as *const i8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_batch_distance.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 104 | / pub unsafe fn batch_l2_squared_8x( [INFO] [stdout] 105 | | query: &[f32], [INFO] [stdout] 106 | | candidates: &[&[f32]; 8], [INFO] [stdout] 107 | | dimension: usize, [INFO] [stdout] 108 | | ) -> [f32; 8] { [INFO] [stdout] | |_________________^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:136:34 [INFO] [stdout] | [INFO] [stdout] 136 | _mm_prefetch(c.as_ptr().add(prefetch_d) as *const i8, _MM_HINT_T0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:141:21 [INFO] [stdout] | [INFO] [stdout] 141 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:141:37 [INFO] [stdout] | [INFO] [stdout] 141 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 152 | process_candidate!(0, acc0); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 152 | process_candidate!(0, acc0); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 153 | process_candidate!(1, acc1); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 153 | process_candidate!(1, acc1); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 154 | process_candidate!(2, acc2); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 154 | process_candidate!(2, acc2); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 155 | process_candidate!(3, acc3); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 155 | process_candidate!(3, acc3); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 156 | process_candidate!(4, acc4); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 156 | process_candidate!(4, acc4); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 157 | process_candidate!(5, acc5); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 157 | process_candidate!(5, acc5); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 158 | process_candidate!(6, acc6); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 158 | process_candidate!(6, acc6); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 159 | process_candidate!(7, acc7); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 159 | process_candidate!(7, acc7); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:166:30 [INFO] [stdout] | [INFO] [stdout] 166 | let q_val = *query.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:168:34 [INFO] [stdout] | [INFO] [stdout] 168 | let c_val = *candidate.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:187:13 [INFO] [stdout] | [INFO] [stdout] 187 | hsum_256(acc0), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | hsum_256(acc1), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | hsum_256(acc2), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | hsum_256(acc3), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:191:13 [INFO] [stdout] | [INFO] [stdout] 191 | hsum_256(acc4), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:192:13 [INFO] [stdout] | [INFO] [stdout] 192 | hsum_256(acc5), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | hsum_256(acc6), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:194:13 [INFO] [stdout] | [INFO] [stdout] 194 | hsum_256(acc7), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:241:30 [INFO] [stdout] | [INFO] [stdout] 241 | _mm_prefetch(query_ptr.add(prefetch_d) as *const i8, _MM_HINT_T0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_batch_distance.rs:217:5 [INFO] [stdout] | [INFO] [stdout] 217 | / pub unsafe fn batch_dot_product_8x( [INFO] [stdout] 218 | | query: &[f32], [INFO] [stdout] 219 | | candidates: &[&[f32]; 8], [INFO] [stdout] 220 | | dimension: usize, [INFO] [stdout] 221 | | ) -> [f32; 8] { [INFO] [stdout] | |_________________^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:244:21 [INFO] [stdout] | [INFO] [stdout] 244 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:244:37 [INFO] [stdout] | [INFO] [stdout] 244 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 253 | process_dot!(0, acc0); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 253 | process_dot!(0, acc0); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 254 | process_dot!(1, acc1); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 254 | process_dot!(1, acc1); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 255 | process_dot!(2, acc2); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 255 | process_dot!(2, acc2); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 256 | process_dot!(3, acc3); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 256 | process_dot!(3, acc3); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 257 | process_dot!(4, acc4); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 257 | process_dot!(4, acc4); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 258 | process_dot!(5, acc5); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 258 | process_dot!(5, acc5); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 259 | process_dot!(6, acc6); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 259 | process_dot!(6, acc6); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 260 | process_dot!(7, acc7); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 260 | process_dot!(7, acc7); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:266:26 [INFO] [stdout] | [INFO] [stdout] 266 | let q_val = *query.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:268:30 [INFO] [stdout] | [INFO] [stdout] 268 | let c_val = *candidate.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:284:13 [INFO] [stdout] | [INFO] [stdout] 284 | hsum_256(acc0), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:285:13 [INFO] [stdout] | [INFO] [stdout] 285 | hsum_256(acc1), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:286:13 [INFO] [stdout] | [INFO] [stdout] 286 | hsum_256(acc2), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:287:13 [INFO] [stdout] | [INFO] [stdout] 287 | hsum_256(acc3), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:288:13 [INFO] [stdout] | [INFO] [stdout] 288 | hsum_256(acc4), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:289:13 [INFO] [stdout] | [INFO] [stdout] 289 | hsum_256(acc5), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:290:13 [INFO] [stdout] | [INFO] [stdout] 290 | hsum_256(acc6), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:291:13 [INFO] [stdout] | [INFO] [stdout] 291 | hsum_256(acc7), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:253:19 [INFO] [stdout] | [INFO] [stdout] 253 | let va0 = _mm256_loadu_ps(a_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:236:1 [INFO] [stdout] | [INFO] [stdout] 236 | pub unsafe fn l2_squared_avx2(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:253:35 [INFO] [stdout] | [INFO] [stdout] 253 | let va0 = _mm256_loadu_ps(a_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:254:19 [INFO] [stdout] | [INFO] [stdout] 254 | let vb0 = _mm256_loadu_ps(b_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:254:35 [INFO] [stdout] | [INFO] [stdout] 254 | let vb0 = _mm256_loadu_ps(b_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:258:19 [INFO] [stdout] | [INFO] [stdout] 258 | let va1 = _mm256_loadu_ps(a_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:258:35 [INFO] [stdout] | [INFO] [stdout] 258 | let va1 = _mm256_loadu_ps(a_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:259:19 [INFO] [stdout] | [INFO] [stdout] 259 | let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:259:35 [INFO] [stdout] | [INFO] [stdout] 259 | let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:263:19 [INFO] [stdout] | [INFO] [stdout] 263 | let va2 = _mm256_loadu_ps(a_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:263:35 [INFO] [stdout] | [INFO] [stdout] 263 | let va2 = _mm256_loadu_ps(a_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:264:19 [INFO] [stdout] | [INFO] [stdout] 264 | let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:264:35 [INFO] [stdout] | [INFO] [stdout] 264 | let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:268:19 [INFO] [stdout] | [INFO] [stdout] 268 | let va3 = _mm256_loadu_ps(a_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:268:35 [INFO] [stdout] | [INFO] [stdout] 268 | let va3 = _mm256_loadu_ps(a_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:269:19 [INFO] [stdout] | [INFO] [stdout] 269 | let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:269:35 [INFO] [stdout] | [INFO] [stdout] 269 | let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:276:18 [INFO] [stdout] | [INFO] [stdout] 276 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:276:34 [INFO] [stdout] | [INFO] [stdout] 276 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:277:18 [INFO] [stdout] | [INFO] [stdout] 277 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:277:34 [INFO] [stdout] | [INFO] [stdout] 277 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:297:21 [INFO] [stdout] | [INFO] [stdout] 297 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:297:43 [INFO] [stdout] | [INFO] [stdout] 297 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:319:18 [INFO] [stdout] | [INFO] [stdout] 319 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:307:1 [INFO] [stdout] | [INFO] [stdout] 307 | pub unsafe fn dot_product_avx2(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:319:34 [INFO] [stdout] | [INFO] [stdout] 319 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:320:18 [INFO] [stdout] | [INFO] [stdout] 320 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:320:34 [INFO] [stdout] | [INFO] [stdout] 320 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:335:20 [INFO] [stdout] | [INFO] [stdout] 335 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:335:42 [INFO] [stdout] | [INFO] [stdout] 335 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:360:18 [INFO] [stdout] | [INFO] [stdout] 360 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:348:1 [INFO] [stdout] | [INFO] [stdout] 348 | pub unsafe fn l2_squared_sse41(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:360:31 [INFO] [stdout] | [INFO] [stdout] 360 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:361:18 [INFO] [stdout] | [INFO] [stdout] 361 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:361:31 [INFO] [stdout] | [INFO] [stdout] 361 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:375:21 [INFO] [stdout] | [INFO] [stdout] 375 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:375:43 [INFO] [stdout] | [INFO] [stdout] 375 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:397:18 [INFO] [stdout] | [INFO] [stdout] 397 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:385:1 [INFO] [stdout] | [INFO] [stdout] 385 | pub unsafe fn dot_product_sse41(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:397:31 [INFO] [stdout] | [INFO] [stdout] 397 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:398:18 [INFO] [stdout] | [INFO] [stdout] 398 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:398:31 [INFO] [stdout] | [INFO] [stdout] 398 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:411:20 [INFO] [stdout] | [INFO] [stdout] 411 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:411:42 [INFO] [stdout] | [INFO] [stdout] 411 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:436:18 [INFO] [stdout] | [INFO] [stdout] 436 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:424:1 [INFO] [stdout] | [INFO] [stdout] 424 | pub unsafe fn l2_squared_avx512(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:436:34 [INFO] [stdout] | [INFO] [stdout] 436 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:437:18 [INFO] [stdout] | [INFO] [stdout] 437 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:437:34 [INFO] [stdout] | [INFO] [stdout] 437 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:447:21 [INFO] [stdout] | [INFO] [stdout] 447 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:447:43 [INFO] [stdout] | [INFO] [stdout] 447 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:469:18 [INFO] [stdout] | [INFO] [stdout] 469 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:457:1 [INFO] [stdout] | [INFO] [stdout] 457 | pub unsafe fn dot_product_avx512(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:469:34 [INFO] [stdout] | [INFO] [stdout] 469 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:470:18 [INFO] [stdout] | [INFO] [stdout] 470 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:470:34 [INFO] [stdout] | [INFO] [stdout] 470 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:479:20 [INFO] [stdout] | [INFO] [stdout] 479 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:479:42 [INFO] [stdout] | [INFO] [stdout] 479 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/simd_distance.rs:771:26 [INFO] [stdout] | [INFO] [stdout] 771 | let sum_scalar = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/simd_distance.rs:791:22 [INFO] [stdout] | [INFO] [stdout] 791 | let mut result = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `FastCandidate` is more private than the item `ScratchBuffers::fast_candidates` [INFO] [stdout] --> src/scratch_buffers.rs:217:5 [INFO] [stdout] | [INFO] [stdout] 217 | pub fast_candidates: BinaryHeap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_candidates` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `FastCandidate` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/hnsw.rs:927:1 [INFO] [stdout] | [INFO] [stdout] 927 | pub(crate) struct FastCandidate { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `FastCandidate` is more private than the item `ScratchBuffers::fast_results_heap` [INFO] [stdout] --> src/scratch_buffers.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 221 | pub fast_results_heap: BinaryHeap>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_results_heap` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `FastCandidate` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/hnsw.rs:927:1 [INFO] [stdout] | [INFO] [stdout] 927 | pub(crate) struct FastCandidate { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `needs_refinement` is never read [INFO] [stdout] --> src/hnsw.rs:2102:16 [INFO] [stdout] | [INFO] [stdout] 2046 | pub struct HnswIndex { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 2102 | pub(crate) needs_refinement: AtomicBool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_node_by_dense`, `connect_node_fast_profiled`, `search_layer_fast`, and `process_neighbors_with_prefetch` are never used [INFO] [stdout] --> src/hnsw.rs:2201:19 [INFO] [stdout] | [INFO] [stdout] 2109 | impl HnswIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 2201 | pub(crate) fn get_node_by_dense(&self, dense_index: u32) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 3577 | fn connect_node_fast_profiled( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 4962 | fn search_layer_fast( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 6207 | fn process_neighbors_with_prefetch( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> src/simd_distance.rs:784:17 [INFO] [stdout] | [INFO] [stdout] 784 | sum_scalar + diff * diff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 784 | let _ = sum_scalar + diff * diff; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Reverse` [INFO] [stdout] --> src/bin/micro_bench.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::cmp::Reverse; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ordering` [INFO] [stdout] --> src/bin/profile_hotpath.rs:8:36 [INFO] [stdout] | [INFO] [stdout] 8 | use std::sync::atomic::{AtomicU64, Ordering}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/profile_hotpath.rs:129:9 [INFO] [stdout] | [INFO] [stdout] 129 | let mut times_distance: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `times_distance` [INFO] [stdout] --> src/bin/profile_hotpath.rs:129:9 [INFO] [stdout] | [INFO] [stdout] 129 | let mut times_distance: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_times_distance` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `DISTANCE_CALLS` is never used [INFO] [stdout] --> src/bin/profile_hotpath.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | static DISTANCE_CALLS: AtomicU64 = AtomicU64::new(0); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `HEAP_PUSHES` is never used [INFO] [stdout] --> src/bin/profile_hotpath.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | static HEAP_PUSHES: AtomicU64 = AtomicU64::new(0); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `VISITED_CHECKS` is never used [INFO] [stdout] --> src/bin/profile_hotpath.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | static VISITED_CHECKS: AtomicU64 = AtomicU64::new(0); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 03s [INFO] running `Command { std: "docker" "inspect" "f5357ad641528a2d0471b7918cd5e25c4f9945444d8ee14051b5ddda24fcdaf0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f5357ad641528a2d0471b7918cd5e25c4f9945444d8ee14051b5ddda24fcdaf0", kill_on_drop: false }` [INFO] [stdout] f5357ad641528a2d0471b7918cd5e25c4f9945444d8ee14051b5ddda24fcdaf0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] be408977d025c830c1b0cef3831d3fdb3538bc28af6be02ff007dc327115f0b9 [INFO] running `Command { std: "docker" "start" "-a" "be408977d025c830c1b0cef3831d3fdb3538bc28af6be02ff007dc327115f0b9", kill_on_drop: false }` [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling rayon v1.12.0 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling linux-raw-sys v0.12.1 [INFO] [stderr] Compiling rustix v1.1.4 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling anstyle v1.0.14 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling clap_lex v1.1.0 [INFO] [stderr] Compiling fastrand v2.4.1 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling clap_builder v4.6.0 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling chrono v0.4.44 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling atoi v2.0.0 [INFO] [stderr] Compiling ndarray v0.15.6 [INFO] [stderr] Compiling ordered-float v4.6.0 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling tempfile v3.27.0 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling criterion-plot v0.5.0 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling clap v4.6.1 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling rand v0.9.4 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling num v0.4.3 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling arrow-buffer v54.3.1 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stderr] Compiling proptest v1.11.0 [INFO] [stderr] Compiling criterion v0.5.1 [INFO] [stderr] Compiling arrow-data v54.3.1 [INFO] [stderr] Compiling arrow-array v54.3.1 [INFO] [stderr] Compiling arrow-select v54.3.1 [INFO] [stderr] Compiling arrow-arith v54.3.1 [INFO] [stderr] Compiling arrow-ipc v54.3.1 [INFO] [stderr] Compiling arrow-row v54.3.1 [INFO] [stderr] Compiling arrow-ord v54.3.1 [INFO] [stderr] Compiling arrow-cast v54.3.1 [INFO] [stderr] Compiling arrow-string v54.3.1 [INFO] [stderr] Compiling arrow v54.3.1 [INFO] [stderr] Compiling sochdb-index v2.0.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `PROFILE_COLLECTOR` [INFO] [stdout] --> src/hnsw.rs:3301:54 [INFO] [stdout] | [INFO] [stdout] 3301 | use crate::profiling::{is_profiling_enabled, PROFILE_COLLECTOR}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::BinaryHeap` [INFO] [stdout] --> src/hnsw.rs:4689:13 [INFO] [stdout] | [INFO] [stdout] 4689 | use std::collections::BinaryHeap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::BinaryHeap` [INFO] [stdout] --> src/hnsw.rs:4849:13 [INFO] [stdout] | [INFO] [stdout] 4849 | use std::collections::BinaryHeap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5068:15 [INFO] [stdout] | [INFO] [stdout] 5068 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5070:15 [INFO] [stdout] | [INFO] [stdout] 5070 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5073:15 [INFO] [stdout] | [INFO] [stdout] 5073 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5258:15 [INFO] [stdout] | [INFO] [stdout] 5258 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5262:15 [INFO] [stdout] | [INFO] [stdout] 5262 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5077:19 [INFO] [stdout] | [INFO] [stdout] 5077 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5151:19 [INFO] [stdout] | [INFO] [stdout] 5151 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5154:19 [INFO] [stdout] | [INFO] [stdout] 5154 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Reverse` [INFO] [stdout] --> src/hnsw.rs:5747:13 [INFO] [stdout] | [INFO] [stdout] 5747 | use std::cmp::Reverse; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:137:16 [INFO] [stdout] | [INFO] [stdout] 137 | data: [u8; VECTOR_DIM], [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:140:18 [INFO] [stdout] | [INFO] [stdout] 140 | impl Default for QuantizedVector { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:148:6 [INFO] [stdout] | [INFO] [stdout] 148 | impl QuantizedVector { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:143:23 [INFO] [stdout] | [INFO] [stdout] 143 | data: [0; VECTOR_DIM], [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | VECTOR_DIM, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:163:13 [INFO] [stdout] | [INFO] [stdout] 163 | VECTOR_DIM, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:166:30 [INFO] [stdout] | [INFO] [stdout] 166 | let mut data = [0u8; VECTOR_DIM]; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:176:21 [INFO] [stdout] | [INFO] [stdout] 176 | for i in 0..VECTOR_DIM { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ContiguousNodeStorage` and `LayerData` [INFO] [stdout] --> src/edge_delta_buffer.rs:451:40 [INFO] [stdout] | [INFO] [stdout] 451 | use crate::storage::node_storage::{ContiguousNodeStorage, LayerData}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::vector_quantized::QuantizedVector` [INFO] [stdout] --> src/edge_delta_buffer.rs:452:9 [INFO] [stdout] | [INFO] [stdout] 452 | use crate::vector_quantized::QuantizedVector; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PROFILE_COLLECTOR` [INFO] [stdout] --> src/hnsw.rs:3301:54 [INFO] [stdout] | [INFO] [stdout] 3301 | use crate::profiling::{is_profiling_enabled, PROFILE_COLLECTOR}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::BinaryHeap` [INFO] [stdout] --> src/hnsw.rs:4689:13 [INFO] [stdout] | [INFO] [stdout] 4689 | use std::collections::BinaryHeap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::BinaryHeap` [INFO] [stdout] --> src/hnsw.rs:4849:13 [INFO] [stdout] | [INFO] [stdout] 4849 | use std::collections::BinaryHeap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5068:15 [INFO] [stdout] | [INFO] [stdout] 5068 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5070:15 [INFO] [stdout] | [INFO] [stdout] 5070 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5073:15 [INFO] [stdout] | [INFO] [stdout] 5073 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5258:15 [INFO] [stdout] | [INFO] [stdout] 5258 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5262:15 [INFO] [stdout] | [INFO] [stdout] 5262 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5077:19 [INFO] [stdout] | [INFO] [stdout] 5077 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5151:19 [INFO] [stdout] | [INFO] [stdout] 5151 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `metrics` [INFO] [stdout] --> src/hnsw.rs:5154:19 [INFO] [stdout] | [INFO] [stdout] 5154 | #[cfg(feature = "metrics")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stdout] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Reverse` [INFO] [stdout] --> src/hnsw.rs:5747:13 [INFO] [stdout] | [INFO] [stdout] 5747 | use std::cmp::Reverse; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dot_product_quantized` [INFO] [stdout] --> src/rng_optimization_tests.rs:12:134 [INFO] [stdout] | [INFO] [stdout] 12 | ...ized_quantized, cosine_distance_normalized_quantized, dot_product_quantized}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:137:16 [INFO] [stdout] | [INFO] [stdout] 137 | data: [u8; VECTOR_DIM], [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:140:18 [INFO] [stdout] | [INFO] [stdout] 140 | impl Default for QuantizedVector { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:148:6 [INFO] [stdout] | [INFO] [stdout] 148 | impl QuantizedVector { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:143:23 [INFO] [stdout] | [INFO] [stdout] 143 | data: [0; VECTOR_DIM], [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | VECTOR_DIM, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:163:13 [INFO] [stdout] | [INFO] [stdout] 163 | VECTOR_DIM, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:166:30 [INFO] [stdout] | [INFO] [stdout] 166 | let mut data = [0u8; VECTOR_DIM]; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stdout] --> src/lockfree_hnsw.rs:176:21 [INFO] [stdout] | [INFO] [stdout] 176 | for i in 0..VECTOR_DIM { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | data: [0; VECTOR_DIM], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:171:16 [INFO] [stdout] | [INFO] [stdout] 171 | Self { data } [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:177:24 [INFO] [stdout] | [INFO] [stdout] 177 | let diff = self.data[i] as i32 - other.data[i] as i32; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:177:46 [INFO] [stdout] | [INFO] [stdout] 177 | let diff = self.data[i] as i32 - other.data[i] as i32; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lockfree_hnsw::AtomicNeighborList::update`: Use update_reclaim() with a UnifiedReclaimer instead — this method leaks memory [INFO] [stdout] --> src/lockfree_hnsw.rs:405:21 [INFO] [stdout] | [INFO] [stdout] 405 | if self.update(&mut mutator) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | data: [0; VECTOR_DIM], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:171:16 [INFO] [stdout] | [INFO] [stdout] 171 | Self { data } [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:177:24 [INFO] [stdout] | [INFO] [stdout] 177 | let diff = self.data[i] as i32 - other.data[i] as i32; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stdout] --> src/lockfree_hnsw.rs:177:46 [INFO] [stdout] | [INFO] [stdout] 177 | let diff = self.data[i] as i32 - other.data[i] as i32; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lockfree_hnsw::AtomicNeighborList::update`: Use update_reclaim() with a UnifiedReclaimer instead — this method leaks memory [INFO] [stdout] --> src/lockfree_hnsw.rs:405:21 [INFO] [stdout] | [INFO] [stdout] 405 | if self.update(&mut mutator) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `lockfree_hnsw::AtomicNeighborList::update_with_retry`: Use update_with_retry_reclaim() with a UnifiedReclaimer instead — this method leaks memory [INFO] [stdout] --> src/lockfree_hnsw.rs:1024:26 [INFO] [stdout] | [INFO] [stdout] 1024 | list.update_with_retry( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rayon::prelude` [INFO] [stdout] --> src/hnsw.rs:3444:13 [INFO] [stdout] | [INFO] [stdout] 3444 | use rayon::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:402:25 [INFO] [stdout] | [INFO] [stdout] 402 | let v_vec = _mm_loadu_ps(tile_ptr.add(d * T)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/aosoa_tiles.rs:384:5 [INFO] [stdout] | [INFO] [stdout] 384 | pub unsafe fn tile_l2_squared_avx2(&self, query: &[f32], tile_idx: usize) -> [f32; T] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:402:38 [INFO] [stdout] | [INFO] [stdout] 402 | let v_vec = _mm_loadu_ps(tile_ptr.add(d * T)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to function `std::arch::x86_64::_mm_fmadd_ps` with `#[target_feature]` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:404:19 [INFO] [stdout] | [INFO] [stdout] 404 | acc = _mm_fmadd_ps(diff, diff, acc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]` [INFO] [stdout] | [INFO] [stdout] = help: in order for the call to be safe, the context requires the following additional target feature: fma [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:408:9 [INFO] [stdout] | [INFO] [stdout] 408 | _mm_storeu_ps(dists.as_mut_ptr(), acc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node_dense` [INFO] [stdout] --> src/hnsw.rs:3081:25 [INFO] [stdout] | [INFO] [stdout] 3081 | let node_dense = node.dense_index; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_dense` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_neighbors` [INFO] [stdout] --> src/hnsw.rs:4887:29 [INFO] [stdout] | [INFO] [stdout] 4887 | let n_neighbors = neighbors.len(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_neighbors` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/hnsw.rs:4889:30 [INFO] [stdout] | [INFO] [stdout] 4889 | for (i, &neighbor_dense) in neighbors.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rayon::prelude` [INFO] [stdout] --> src/hnsw.rs:3444:13 [INFO] [stdout] | [INFO] [stdout] 3444 | use rayon::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6453:9 [INFO] [stdout] | [INFO] [stdout] 6453 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6473:9 [INFO] [stdout] | [INFO] [stdout] 6473 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6613:9 [INFO] [stdout] | [INFO] [stdout] 6613 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6633:9 [INFO] [stdout] | [INFO] [stdout] 6633 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7044:22 [INFO] [stdout] | [INFO] [stdout] 7044 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7030:5 [INFO] [stdout] | [INFO] [stdout] 7030 | unsafe fn cosine_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7044:38 [INFO] [stdout] | [INFO] [stdout] 7044 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7045:22 [INFO] [stdout] | [INFO] [stdout] 7045 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7045:38 [INFO] [stdout] | [INFO] [stdout] 7045 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7054:19 [INFO] [stdout] | [INFO] [stdout] 7054 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7055:22 [INFO] [stdout] | [INFO] [stdout] 7055 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7056:22 [INFO] [stdout] | [INFO] [stdout] 7056 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7088:23 [INFO] [stdout] | [INFO] [stdout] 7088 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7069:5 [INFO] [stdout] | [INFO] [stdout] 7069 | unsafe fn cosine_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7088:39 [INFO] [stdout] | [INFO] [stdout] 7088 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7089:23 [INFO] [stdout] | [INFO] [stdout] 7089 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7089:39 [INFO] [stdout] | [INFO] [stdout] 7089 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7090:23 [INFO] [stdout] | [INFO] [stdout] 7090 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7090:39 [INFO] [stdout] | [INFO] [stdout] 7090 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7091:23 [INFO] [stdout] | [INFO] [stdout] 7091 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7091:39 [INFO] [stdout] | [INFO] [stdout] 7091 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7109:19 [INFO] [stdout] | [INFO] [stdout] 7109 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7110:22 [INFO] [stdout] | [INFO] [stdout] 7110 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7111:22 [INFO] [stdout] | [INFO] [stdout] 7111 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7143:23 [INFO] [stdout] | [INFO] [stdout] 7143 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7124:5 [INFO] [stdout] | [INFO] [stdout] 7124 | unsafe fn cosine_distance_avx2_unrolled_1536(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7143:39 [INFO] [stdout] | [INFO] [stdout] 7143 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7144:23 [INFO] [stdout] | [INFO] [stdout] 7144 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7144:39 [INFO] [stdout] | [INFO] [stdout] 7144 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7145:23 [INFO] [stdout] | [INFO] [stdout] 7145 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7145:39 [INFO] [stdout] | [INFO] [stdout] 7145 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7146:23 [INFO] [stdout] | [INFO] [stdout] 7146 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7146:39 [INFO] [stdout] | [INFO] [stdout] 7146 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7162:19 [INFO] [stdout] | [INFO] [stdout] 7162 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7163:22 [INFO] [stdout] | [INFO] [stdout] 7163 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7164:22 [INFO] [stdout] | [INFO] [stdout] 7164 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7187:22 [INFO] [stdout] | [INFO] [stdout] 7187 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7176:5 [INFO] [stdout] | [INFO] [stdout] 7176 | unsafe fn l2_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7187:38 [INFO] [stdout] | [INFO] [stdout] 7187 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7188:22 [INFO] [stdout] | [INFO] [stdout] 7188 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7188:38 [INFO] [stdout] | [INFO] [stdout] 7188 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7193:9 [INFO] [stdout] | [INFO] [stdout] 7193 | Self::horizontal_sum_avx2(sum).sqrt() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7209:22 [INFO] [stdout] | [INFO] [stdout] 7209 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7199:5 [INFO] [stdout] | [INFO] [stdout] 7199 | unsafe fn l2_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7209:38 [INFO] [stdout] | [INFO] [stdout] 7209 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7210:22 [INFO] [stdout] | [INFO] [stdout] 7210 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7210:38 [INFO] [stdout] | [INFO] [stdout] 7210 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7215:9 [INFO] [stdout] | [INFO] [stdout] 7215 | Self::horizontal_sum_avx2(sum).sqrt() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7231:22 [INFO] [stdout] | [INFO] [stdout] 7231 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7221:5 [INFO] [stdout] | [INFO] [stdout] 7221 | unsafe fn dot_product_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7231:38 [INFO] [stdout] | [INFO] [stdout] 7231 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7232:22 [INFO] [stdout] | [INFO] [stdout] 7232 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7232:38 [INFO] [stdout] | [INFO] [stdout] 7232 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7236:9 [INFO] [stdout] | [INFO] [stdout] 7236 | Self::horizontal_sum_avx2(sum) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reachable` [INFO] [stdout] --> src/hnsw.rs:8045:14 [INFO] [stdout] | [INFO] [stdout] 8045 | let (reachable, total, orphans) = self.diagnose_connectivity(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reachable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `total` [INFO] [stdout] --> src/hnsw.rs:8045:25 [INFO] [stdout] | [INFO] [stdout] 8045 | let (reachable, total, orphans) = self.diagnose_connectivity(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_total` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:402:25 [INFO] [stdout] | [INFO] [stdout] 402 | let v_vec = _mm_loadu_ps(tile_ptr.add(d * T)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/aosoa_tiles.rs:384:5 [INFO] [stdout] | [INFO] [stdout] 384 | pub unsafe fn tile_l2_squared_avx2(&self, query: &[f32], tile_idx: usize) -> [f32; T] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:402:38 [INFO] [stdout] | [INFO] [stdout] 402 | let v_vec = _mm_loadu_ps(tile_ptr.add(d * T)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to function `std::arch::x86_64::_mm_fmadd_ps` with `#[target_feature]` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:404:19 [INFO] [stdout] | [INFO] [stdout] 404 | acc = _mm_fmadd_ps(diff, diff, acc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]` [INFO] [stdout] | [INFO] [stdout] = help: in order for the call to be safe, the context requires the following additional target feature: fma [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/aosoa_tiles.rs:408:9 [INFO] [stdout] | [INFO] [stdout] 408 | _mm_storeu_ps(dists.as_mut_ptr(), acc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:431:22 [INFO] [stdout] | [INFO] [stdout] 431 | let va = _mm256_loadu_ps(a.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/optimized_search.rs:420:5 [INFO] [stdout] | [INFO] [stdout] 420 | unsafe fn euclidean_distance_avx2(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:431:38 [INFO] [stdout] | [INFO] [stdout] 431 | let va = _mm256_loadu_ps(a.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:432:22 [INFO] [stdout] | [INFO] [stdout] 432 | let vb = _mm256_loadu_ps(b.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:432:38 [INFO] [stdout] | [INFO] [stdout] 432 | let vb = _mm256_loadu_ps(b.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:389:22 [INFO] [stdout] | [INFO] [stdout] 389 | let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/unified_quant.rs:379:5 [INFO] [stdout] | [INFO] [stdout] 379 | unsafe fn dot_i8_avx2(a: &[i8], b: &[i8]) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:389:41 [INFO] [stdout] | [INFO] [stdout] 389 | let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:390:22 [INFO] [stdout] | [INFO] [stdout] 390 | let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:390:41 [INFO] [stdout] | [INFO] [stdout] 390 | let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:188:18 [INFO] [stdout] | [INFO] [stdout] 188 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:177:5 [INFO] [stdout] | [INFO] [stdout] 177 | unsafe fn blend_avx2(a: [f32; 4], b: [f32; 4], mask: SimdMask) -> [f32; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:189:18 [INFO] [stdout] | [INFO] [stdout] 189 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_si128` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:190:18 [INFO] [stdout] | [INFO] [stdout] 190 | let vm = _mm_loadu_si128(mask_expanded.as_ptr() as *const __m128i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:195:9 [INFO] [stdout] | [INFO] [stdout] 195 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:266:18 [INFO] [stdout] | [INFO] [stdout] 266 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | unsafe fn min_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:267:18 [INFO] [stdout] | [INFO] [stdout] 267 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:270:9 [INFO] [stdout] | [INFO] [stdout] 270 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:313:18 [INFO] [stdout] | [INFO] [stdout] 313 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:311:5 [INFO] [stdout] | [INFO] [stdout] 311 | unsafe fn max_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:314:18 [INFO] [stdout] | [INFO] [stdout] 314 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:317:9 [INFO] [stdout] | [INFO] [stdout] 317 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:474:18 [INFO] [stdout] | [INFO] [stdout] 474 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:459:5 [INFO] [stdout] | [INFO] [stdout] 459 | unsafe fn blend_avx2(a: [f32; 8], b: [f32; 8], mask: u8) -> [f32; 8] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:475:18 [INFO] [stdout] | [INFO] [stdout] 475 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:476:18 [INFO] [stdout] | [INFO] [stdout] 476 | let vm = _mm256_loadu_si256(mask_expanded.as_ptr() as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:481:9 [INFO] [stdout] | [INFO] [stdout] 481 | _mm256_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:507:18 [INFO] [stdout] | [INFO] [stdout] 507 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:505:5 [INFO] [stdout] | [INFO] [stdout] 505 | unsafe fn min_avx2(a: [f32; 8], b: [f32; 8]) -> [f32; 8] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:508:18 [INFO] [stdout] | [INFO] [stdout] 508 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:511:9 [INFO] [stdout] | [INFO] [stdout] 511 | _mm256_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:539:18 [INFO] [stdout] | [INFO] [stdout] 539 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:537:5 [INFO] [stdout] | [INFO] [stdout] 537 | unsafe fn cmp_lt_avx2(a: [f32; 8], b: [f32; 8]) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:540:18 [INFO] [stdout] | [INFO] [stdout] 540 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:132:21 [INFO] [stdout] | [INFO] [stdout] 132 | query_ptr.add(prefetch_d) as *const i8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_batch_distance.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 104 | / pub unsafe fn batch_l2_squared_8x( [INFO] [stdout] 105 | | query: &[f32], [INFO] [stdout] 106 | | candidates: &[&[f32]; 8], [INFO] [stdout] 107 | | dimension: usize, [INFO] [stdout] 108 | | ) -> [f32; 8] { [INFO] [stdout] | |_________________^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:136:34 [INFO] [stdout] | [INFO] [stdout] 136 | _mm_prefetch(c.as_ptr().add(prefetch_d) as *const i8, _MM_HINT_T0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:141:21 [INFO] [stdout] | [INFO] [stdout] 141 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:141:37 [INFO] [stdout] | [INFO] [stdout] 141 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 152 | process_candidate!(0, acc0); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 152 | process_candidate!(0, acc0); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 153 | process_candidate!(1, acc1); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 153 | process_candidate!(1, acc1); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 154 | process_candidate!(2, acc2); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 154 | process_candidate!(2, acc2); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 155 | process_candidate!(3, acc3); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 155 | process_candidate!(3, acc3); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 156 | process_candidate!(4, acc4); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 156 | process_candidate!(4, acc4); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 157 | process_candidate!(5, acc5); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 157 | process_candidate!(5, acc5); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 158 | process_candidate!(6, acc6); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 158 | process_candidate!(6, acc6); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 159 | process_candidate!(7, acc7); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 159 | process_candidate!(7, acc7); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:166:30 [INFO] [stdout] | [INFO] [stdout] 166 | let q_val = *query.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:168:34 [INFO] [stdout] | [INFO] [stdout] 168 | let c_val = *candidate.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:187:13 [INFO] [stdout] | [INFO] [stdout] 187 | hsum_256(acc0), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | hsum_256(acc1), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | hsum_256(acc2), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | hsum_256(acc3), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:191:13 [INFO] [stdout] | [INFO] [stdout] 191 | hsum_256(acc4), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:192:13 [INFO] [stdout] | [INFO] [stdout] 192 | hsum_256(acc5), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | hsum_256(acc6), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:194:13 [INFO] [stdout] | [INFO] [stdout] 194 | hsum_256(acc7), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:241:30 [INFO] [stdout] | [INFO] [stdout] 241 | _mm_prefetch(query_ptr.add(prefetch_d) as *const i8, _MM_HINT_T0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_batch_distance.rs:217:5 [INFO] [stdout] | [INFO] [stdout] 217 | / pub unsafe fn batch_dot_product_8x( [INFO] [stdout] 218 | | query: &[f32], [INFO] [stdout] 219 | | candidates: &[&[f32]; 8], [INFO] [stdout] 220 | | dimension: usize, [INFO] [stdout] 221 | | ) -> [f32; 8] { [INFO] [stdout] | |_________________^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:244:21 [INFO] [stdout] | [INFO] [stdout] 244 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:244:37 [INFO] [stdout] | [INFO] [stdout] 244 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 253 | process_dot!(0, acc0); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 253 | process_dot!(0, acc0); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 254 | process_dot!(1, acc1); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 254 | process_dot!(1, acc1); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 255 | process_dot!(2, acc2); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 255 | process_dot!(2, acc2); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 256 | process_dot!(3, acc3); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 256 | process_dot!(3, acc3); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 257 | process_dot!(4, acc4); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 257 | process_dot!(4, acc4); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 258 | process_dot!(5, acc5); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 258 | process_dot!(5, acc5); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 259 | process_dot!(6, acc6); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 259 | process_dot!(6, acc6); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 260 | process_dot!(7, acc7); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 260 | process_dot!(7, acc7); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:266:26 [INFO] [stdout] | [INFO] [stdout] 266 | let q_val = *query.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:268:30 [INFO] [stdout] | [INFO] [stdout] 268 | let c_val = *candidate.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:284:13 [INFO] [stdout] | [INFO] [stdout] 284 | hsum_256(acc0), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:285:13 [INFO] [stdout] | [INFO] [stdout] 285 | hsum_256(acc1), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:286:13 [INFO] [stdout] | [INFO] [stdout] 286 | hsum_256(acc2), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:287:13 [INFO] [stdout] | [INFO] [stdout] 287 | hsum_256(acc3), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:288:13 [INFO] [stdout] | [INFO] [stdout] 288 | hsum_256(acc4), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:289:13 [INFO] [stdout] | [INFO] [stdout] 289 | hsum_256(acc5), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:290:13 [INFO] [stdout] | [INFO] [stdout] 290 | hsum_256(acc6), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:291:13 [INFO] [stdout] | [INFO] [stdout] 291 | hsum_256(acc7), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:253:19 [INFO] [stdout] | [INFO] [stdout] 253 | let va0 = _mm256_loadu_ps(a_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:236:1 [INFO] [stdout] | [INFO] [stdout] 236 | pub unsafe fn l2_squared_avx2(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:253:35 [INFO] [stdout] | [INFO] [stdout] 253 | let va0 = _mm256_loadu_ps(a_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:254:19 [INFO] [stdout] | [INFO] [stdout] 254 | let vb0 = _mm256_loadu_ps(b_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:254:35 [INFO] [stdout] | [INFO] [stdout] 254 | let vb0 = _mm256_loadu_ps(b_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:258:19 [INFO] [stdout] | [INFO] [stdout] 258 | let va1 = _mm256_loadu_ps(a_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:258:35 [INFO] [stdout] | [INFO] [stdout] 258 | let va1 = _mm256_loadu_ps(a_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:259:19 [INFO] [stdout] | [INFO] [stdout] 259 | let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:259:35 [INFO] [stdout] | [INFO] [stdout] 259 | let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:263:19 [INFO] [stdout] | [INFO] [stdout] 263 | let va2 = _mm256_loadu_ps(a_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:263:35 [INFO] [stdout] | [INFO] [stdout] 263 | let va2 = _mm256_loadu_ps(a_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:264:19 [INFO] [stdout] | [INFO] [stdout] 264 | let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:264:35 [INFO] [stdout] | [INFO] [stdout] 264 | let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:268:19 [INFO] [stdout] | [INFO] [stdout] 268 | let va3 = _mm256_loadu_ps(a_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:268:35 [INFO] [stdout] | [INFO] [stdout] 268 | let va3 = _mm256_loadu_ps(a_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:269:19 [INFO] [stdout] | [INFO] [stdout] 269 | let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:269:35 [INFO] [stdout] | [INFO] [stdout] 269 | let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:276:18 [INFO] [stdout] | [INFO] [stdout] 276 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:276:34 [INFO] [stdout] | [INFO] [stdout] 276 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:277:18 [INFO] [stdout] | [INFO] [stdout] 277 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:277:34 [INFO] [stdout] | [INFO] [stdout] 277 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:297:21 [INFO] [stdout] | [INFO] [stdout] 297 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:297:43 [INFO] [stdout] | [INFO] [stdout] 297 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:319:18 [INFO] [stdout] | [INFO] [stdout] 319 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:307:1 [INFO] [stdout] | [INFO] [stdout] 307 | pub unsafe fn dot_product_avx2(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:319:34 [INFO] [stdout] | [INFO] [stdout] 319 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:320:18 [INFO] [stdout] | [INFO] [stdout] 320 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:320:34 [INFO] [stdout] | [INFO] [stdout] 320 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:335:20 [INFO] [stdout] | [INFO] [stdout] 335 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:335:42 [INFO] [stdout] | [INFO] [stdout] 335 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:360:18 [INFO] [stdout] | [INFO] [stdout] 360 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:348:1 [INFO] [stdout] | [INFO] [stdout] 348 | pub unsafe fn l2_squared_sse41(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:360:31 [INFO] [stdout] | [INFO] [stdout] 360 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:361:18 [INFO] [stdout] | [INFO] [stdout] 361 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:361:31 [INFO] [stdout] | [INFO] [stdout] 361 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:375:21 [INFO] [stdout] | [INFO] [stdout] 375 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:375:43 [INFO] [stdout] | [INFO] [stdout] 375 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:397:18 [INFO] [stdout] | [INFO] [stdout] 397 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:385:1 [INFO] [stdout] | [INFO] [stdout] 385 | pub unsafe fn dot_product_sse41(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:397:31 [INFO] [stdout] | [INFO] [stdout] 397 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:398:18 [INFO] [stdout] | [INFO] [stdout] 398 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:398:31 [INFO] [stdout] | [INFO] [stdout] 398 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:411:20 [INFO] [stdout] | [INFO] [stdout] 411 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:411:42 [INFO] [stdout] | [INFO] [stdout] 411 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:436:18 [INFO] [stdout] | [INFO] [stdout] 436 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:424:1 [INFO] [stdout] | [INFO] [stdout] 424 | pub unsafe fn l2_squared_avx512(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:436:34 [INFO] [stdout] | [INFO] [stdout] 436 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:437:18 [INFO] [stdout] | [INFO] [stdout] 437 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:437:34 [INFO] [stdout] | [INFO] [stdout] 437 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:447:21 [INFO] [stdout] | [INFO] [stdout] 447 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:447:43 [INFO] [stdout] | [INFO] [stdout] 447 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:469:18 [INFO] [stdout] | [INFO] [stdout] 469 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:457:1 [INFO] [stdout] | [INFO] [stdout] 457 | pub unsafe fn dot_product_avx512(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:469:34 [INFO] [stdout] | [INFO] [stdout] 469 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:470:18 [INFO] [stdout] | [INFO] [stdout] 470 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:470:34 [INFO] [stdout] | [INFO] [stdout] 470 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:479:20 [INFO] [stdout] | [INFO] [stdout] 479 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:479:42 [INFO] [stdout] | [INFO] [stdout] 479 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/simd_distance.rs:771:26 [INFO] [stdout] | [INFO] [stdout] 771 | let sum_scalar = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/simd_distance.rs:791:22 [INFO] [stdout] | [INFO] [stdout] 791 | let mut result = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node_dense` [INFO] [stdout] --> src/hnsw.rs:3081:25 [INFO] [stdout] | [INFO] [stdout] 3081 | let node_dense = node.dense_index; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_dense` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `FastCandidate` is more private than the item `ScratchBuffers::fast_candidates` [INFO] [stdout] --> src/scratch_buffers.rs:217:5 [INFO] [stdout] | [INFO] [stdout] 217 | pub fast_candidates: BinaryHeap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_candidates` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `FastCandidate` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/hnsw.rs:927:1 [INFO] [stdout] | [INFO] [stdout] 927 | pub(crate) struct FastCandidate { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `FastCandidate` is more private than the item `ScratchBuffers::fast_results_heap` [INFO] [stdout] --> src/scratch_buffers.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 221 | pub fast_results_heap: BinaryHeap>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_results_heap` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `FastCandidate` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/hnsw.rs:927:1 [INFO] [stdout] | [INFO] [stdout] 927 | pub(crate) struct FastCandidate { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `needs_refinement` is never read [INFO] [stdout] --> src/hnsw.rs:2102:16 [INFO] [stdout] | [INFO] [stdout] 2046 | pub struct HnswIndex { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 2102 | pub(crate) needs_refinement: AtomicBool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_node_by_dense`, `connect_node_fast_profiled`, `search_layer_fast`, and `process_neighbors_with_prefetch` are never used [INFO] [stdout] --> src/hnsw.rs:2201:19 [INFO] [stdout] | [INFO] [stdout] 2109 | impl HnswIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 2201 | pub(crate) fn get_node_by_dense(&self, dense_index: u32) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 3577 | fn connect_node_fast_profiled( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 4962 | fn search_layer_fast( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 6207 | fn process_neighbors_with_prefetch( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_neighbors` [INFO] [stdout] --> src/hnsw.rs:4887:29 [INFO] [stdout] | [INFO] [stdout] 4887 | let n_neighbors = neighbors.len(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_neighbors` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/hnsw.rs:4889:30 [INFO] [stdout] | [INFO] [stdout] 4889 | for (i, &neighbor_dense) in neighbors.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> src/simd_distance.rs:784:17 [INFO] [stdout] | [INFO] [stdout] 784 | sum_scalar + diff * diff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 784 | let _ = sum_scalar + diff * diff; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6453:9 [INFO] [stdout] | [INFO] [stdout] 6453 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6473:9 [INFO] [stdout] | [INFO] [stdout] 6473 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6613:9 [INFO] [stdout] | [INFO] [stdout] 6613 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/hnsw.rs:6633:9 [INFO] [stdout] | [INFO] [stdout] 6633 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7044:22 [INFO] [stdout] | [INFO] [stdout] 7044 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7030:5 [INFO] [stdout] | [INFO] [stdout] 7030 | unsafe fn cosine_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7044:38 [INFO] [stdout] | [INFO] [stdout] 7044 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7045:22 [INFO] [stdout] | [INFO] [stdout] 7045 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7045:38 [INFO] [stdout] | [INFO] [stdout] 7045 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7054:19 [INFO] [stdout] | [INFO] [stdout] 7054 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7055:22 [INFO] [stdout] | [INFO] [stdout] 7055 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7056:22 [INFO] [stdout] | [INFO] [stdout] 7056 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7088:23 [INFO] [stdout] | [INFO] [stdout] 7088 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7069:5 [INFO] [stdout] | [INFO] [stdout] 7069 | unsafe fn cosine_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7088:39 [INFO] [stdout] | [INFO] [stdout] 7088 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7089:23 [INFO] [stdout] | [INFO] [stdout] 7089 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7089:39 [INFO] [stdout] | [INFO] [stdout] 7089 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7090:23 [INFO] [stdout] | [INFO] [stdout] 7090 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7090:39 [INFO] [stdout] | [INFO] [stdout] 7090 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7091:23 [INFO] [stdout] | [INFO] [stdout] 7091 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7091:39 [INFO] [stdout] | [INFO] [stdout] 7091 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7109:19 [INFO] [stdout] | [INFO] [stdout] 7109 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7110:22 [INFO] [stdout] | [INFO] [stdout] 7110 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7111:22 [INFO] [stdout] | [INFO] [stdout] 7111 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7143:23 [INFO] [stdout] | [INFO] [stdout] 7143 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7124:5 [INFO] [stdout] | [INFO] [stdout] 7124 | unsafe fn cosine_distance_avx2_unrolled_1536(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7143:39 [INFO] [stdout] | [INFO] [stdout] 7143 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7144:23 [INFO] [stdout] | [INFO] [stdout] 7144 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7144:39 [INFO] [stdout] | [INFO] [stdout] 7144 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7145:23 [INFO] [stdout] | [INFO] [stdout] 7145 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7145:39 [INFO] [stdout] | [INFO] [stdout] 7145 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7146:23 [INFO] [stdout] | [INFO] [stdout] 7146 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7146:39 [INFO] [stdout] | [INFO] [stdout] 7146 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7162:19 [INFO] [stdout] | [INFO] [stdout] 7162 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7163:22 [INFO] [stdout] | [INFO] [stdout] 7163 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7164:22 [INFO] [stdout] | [INFO] [stdout] 7164 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7187:22 [INFO] [stdout] | [INFO] [stdout] 7187 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7176:5 [INFO] [stdout] | [INFO] [stdout] 7176 | unsafe fn l2_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7187:38 [INFO] [stdout] | [INFO] [stdout] 7187 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7188:22 [INFO] [stdout] | [INFO] [stdout] 7188 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7188:38 [INFO] [stdout] | [INFO] [stdout] 7188 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7193:9 [INFO] [stdout] | [INFO] [stdout] 7193 | Self::horizontal_sum_avx2(sum).sqrt() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7209:22 [INFO] [stdout] | [INFO] [stdout] 7209 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7199:5 [INFO] [stdout] | [INFO] [stdout] 7199 | unsafe fn l2_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7209:38 [INFO] [stdout] | [INFO] [stdout] 7209 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7210:22 [INFO] [stdout] | [INFO] [stdout] 7210 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7210:38 [INFO] [stdout] | [INFO] [stdout] 7210 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7215:9 [INFO] [stdout] | [INFO] [stdout] 7215 | Self::horizontal_sum_avx2(sum).sqrt() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7231:22 [INFO] [stdout] | [INFO] [stdout] 7231 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/hnsw.rs:7221:5 [INFO] [stdout] | [INFO] [stdout] 7221 | unsafe fn dot_product_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7231:38 [INFO] [stdout] | [INFO] [stdout] 7231 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7232:22 [INFO] [stdout] | [INFO] [stdout] 7232 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7232:38 [INFO] [stdout] | [INFO] [stdout] 7232 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stdout] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stdout] --> src/hnsw.rs:7236:9 [INFO] [stdout] | [INFO] [stdout] 7236 | Self::horizontal_sum_avx2(sum) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `reachable` [INFO] [stdout] --> src/hnsw.rs:8045:14 [INFO] [stdout] | [INFO] [stdout] 8045 | let (reachable, total, orphans) = self.diagnose_connectivity(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reachable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `total` [INFO] [stdout] --> src/hnsw.rs:8045:25 [INFO] [stdout] | [INFO] [stdout] 8045 | let (reachable, total, orphans) = self.diagnose_connectivity(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_total` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `base_vector` [INFO] [stdout] --> src/lockfree_hnsw.rs:1185:13 [INFO] [stdout] | [INFO] [stdout] 1185 | let base_vector = DynamicQuantizedVector::from_f32(&[0.5; TEST_DIM]); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_base_vector` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:431:22 [INFO] [stdout] | [INFO] [stdout] 431 | let va = _mm256_loadu_ps(a.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/optimized_search.rs:420:5 [INFO] [stdout] | [INFO] [stdout] 420 | unsafe fn euclidean_distance_avx2(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:431:38 [INFO] [stdout] | [INFO] [stdout] 431 | let va = _mm256_loadu_ps(a.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:432:22 [INFO] [stdout] | [INFO] [stdout] 432 | let vb = _mm256_loadu_ps(b.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/optimized_search.rs:432:38 [INFO] [stdout] | [INFO] [stdout] 432 | let vb = _mm256_loadu_ps(b.as_ptr().add(idx)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unified_search.rs:650:13 [INFO] [stdout] | [INFO] [stdout] 650 | let mut id_mapper = IdMapper::new(); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:389:22 [INFO] [stdout] | [INFO] [stdout] 389 | let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/unified_quant.rs:379:5 [INFO] [stdout] | [INFO] [stdout] 379 | unsafe fn dot_i8_avx2(a: &[i8], b: &[i8]) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:389:41 [INFO] [stdout] | [INFO] [stdout] 389 | let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:390:22 [INFO] [stdout] | [INFO] [stdout] 390 | let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/unified_quant.rs:390:41 [INFO] [stdout] | [INFO] [stdout] 390 | let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:188:18 [INFO] [stdout] | [INFO] [stdout] 188 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:177:5 [INFO] [stdout] | [INFO] [stdout] 177 | unsafe fn blend_avx2(a: [f32; 4], b: [f32; 4], mask: SimdMask) -> [f32; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:189:18 [INFO] [stdout] | [INFO] [stdout] 189 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_si128` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:190:18 [INFO] [stdout] | [INFO] [stdout] 190 | let vm = _mm_loadu_si128(mask_expanded.as_ptr() as *const __m128i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:195:9 [INFO] [stdout] | [INFO] [stdout] 195 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:266:18 [INFO] [stdout] | [INFO] [stdout] 266 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:264:5 [INFO] [stdout] | [INFO] [stdout] 264 | unsafe fn min_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:267:18 [INFO] [stdout] | [INFO] [stdout] 267 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:270:9 [INFO] [stdout] | [INFO] [stdout] 270 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:313:18 [INFO] [stdout] | [INFO] [stdout] 313 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:311:5 [INFO] [stdout] | [INFO] [stdout] 311 | unsafe fn max_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:314:18 [INFO] [stdout] | [INFO] [stdout] 314 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:317:9 [INFO] [stdout] | [INFO] [stdout] 317 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:474:18 [INFO] [stdout] | [INFO] [stdout] 474 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:459:5 [INFO] [stdout] | [INFO] [stdout] 459 | unsafe fn blend_avx2(a: [f32; 8], b: [f32; 8], mask: u8) -> [f32; 8] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:475:18 [INFO] [stdout] | [INFO] [stdout] 475 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:476:18 [INFO] [stdout] | [INFO] [stdout] 476 | let vm = _mm256_loadu_si256(mask_expanded.as_ptr() as *const __m256i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:481:9 [INFO] [stdout] | [INFO] [stdout] 481 | _mm256_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:507:18 [INFO] [stdout] | [INFO] [stdout] 507 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:505:5 [INFO] [stdout] | [INFO] [stdout] 505 | unsafe fn min_avx2(a: [f32; 8], b: [f32; 8]) -> [f32; 8] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:508:18 [INFO] [stdout] | [INFO] [stdout] 508 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:511:9 [INFO] [stdout] | [INFO] [stdout] 511 | _mm256_storeu_ps(out.as_mut_ptr(), result); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:539:18 [INFO] [stdout] | [INFO] [stdout] 539 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/predicated_simd.rs:537:5 [INFO] [stdout] | [INFO] [stdout] 537 | unsafe fn cmp_lt_avx2(a: [f32; 8], b: [f32; 8]) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/predicated_simd.rs:540:18 [INFO] [stdout] | [INFO] [stdout] 540 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:132:21 [INFO] [stdout] | [INFO] [stdout] 132 | query_ptr.add(prefetch_d) as *const i8, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_batch_distance.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 104 | / pub unsafe fn batch_l2_squared_8x( [INFO] [stdout] 105 | | query: &[f32], [INFO] [stdout] 106 | | candidates: &[&[f32]; 8], [INFO] [stdout] 107 | | dimension: usize, [INFO] [stdout] 108 | | ) -> [f32; 8] { [INFO] [stdout] | |_________________^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:136:34 [INFO] [stdout] | [INFO] [stdout] 136 | _mm_prefetch(c.as_ptr().add(prefetch_d) as *const i8, _MM_HINT_T0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:141:21 [INFO] [stdout] | [INFO] [stdout] 141 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:141:37 [INFO] [stdout] | [INFO] [stdout] 141 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 152 | process_candidate!(0, acc0); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 152 | process_candidate!(0, acc0); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 153 | process_candidate!(1, acc1); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 153 | process_candidate!(1, acc1); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 154 | process_candidate!(2, acc2); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 154 | process_candidate!(2, acc2); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 155 | process_candidate!(3, acc3); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 155 | process_candidate!(3, acc3); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 156 | process_candidate!(4, acc4); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 156 | process_candidate!(4, acc4); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 157 | process_candidate!(5, acc5); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 157 | process_candidate!(5, acc5); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 158 | process_candidate!(6, acc6); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 158 | process_candidate!(6, acc6); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:29 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 159 | process_candidate!(7, acc7); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:146:45 [INFO] [stdout] | [INFO] [stdout] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 159 | process_candidate!(7, acc7); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:166:30 [INFO] [stdout] | [INFO] [stdout] 166 | let q_val = *query.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:168:34 [INFO] [stdout] | [INFO] [stdout] 168 | let c_val = *candidate.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:187:13 [INFO] [stdout] | [INFO] [stdout] 187 | hsum_256(acc0), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:188:13 [INFO] [stdout] | [INFO] [stdout] 188 | hsum_256(acc1), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | hsum_256(acc2), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | hsum_256(acc3), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:191:13 [INFO] [stdout] | [INFO] [stdout] 191 | hsum_256(acc4), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:192:13 [INFO] [stdout] | [INFO] [stdout] 192 | hsum_256(acc5), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | hsum_256(acc6), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:194:13 [INFO] [stdout] | [INFO] [stdout] 194 | hsum_256(acc7), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:241:30 [INFO] [stdout] | [INFO] [stdout] 241 | _mm_prefetch(query_ptr.add(prefetch_d) as *const i8, _MM_HINT_T0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_batch_distance.rs:217:5 [INFO] [stdout] | [INFO] [stdout] 217 | / pub unsafe fn batch_dot_product_8x( [INFO] [stdout] 218 | | query: &[f32], [INFO] [stdout] 219 | | candidates: &[&[f32]; 8], [INFO] [stdout] 220 | | dimension: usize, [INFO] [stdout] 221 | | ) -> [f32; 8] { [INFO] [stdout] | |_________________^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:244:21 [INFO] [stdout] | [INFO] [stdout] 244 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:244:37 [INFO] [stdout] | [INFO] [stdout] 244 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 253 | process_dot!(0, acc0); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 253 | process_dot!(0, acc0); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 254 | process_dot!(1, acc1); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 254 | process_dot!(1, acc1); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 255 | process_dot!(2, acc2); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 255 | process_dot!(2, acc2); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 256 | process_dot!(3, acc3); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 256 | process_dot!(3, acc3); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 257 | process_dot!(4, acc4); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 257 | process_dot!(4, acc4); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 258 | process_dot!(5, acc5); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 258 | process_dot!(5, acc5); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 259 | process_dot!(6, acc6); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 259 | process_dot!(6, acc6); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:29 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 260 | process_dot!(7, acc7); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:248:45 [INFO] [stdout] | [INFO] [stdout] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] ... [INFO] [stdout] 260 | process_dot!(7, acc7); [INFO] [stdout] | --------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:266:26 [INFO] [stdout] | [INFO] [stdout] 266 | let q_val = *query.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:268:30 [INFO] [stdout] | [INFO] [stdout] 268 | let c_val = *candidate.get_unchecked(d); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:284:13 [INFO] [stdout] | [INFO] [stdout] 284 | hsum_256(acc0), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:285:13 [INFO] [stdout] | [INFO] [stdout] 285 | hsum_256(acc1), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:286:13 [INFO] [stdout] | [INFO] [stdout] 286 | hsum_256(acc2), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:287:13 [INFO] [stdout] | [INFO] [stdout] 287 | hsum_256(acc3), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:288:13 [INFO] [stdout] | [INFO] [stdout] 288 | hsum_256(acc4), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:289:13 [INFO] [stdout] | [INFO] [stdout] 289 | hsum_256(acc5), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:290:13 [INFO] [stdout] | [INFO] [stdout] 290 | hsum_256(acc6), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_batch_distance.rs:291:13 [INFO] [stdout] | [INFO] [stdout] 291 | hsum_256(acc7), [INFO] [stdout] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:253:19 [INFO] [stdout] | [INFO] [stdout] 253 | let va0 = _mm256_loadu_ps(a_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:236:1 [INFO] [stdout] | [INFO] [stdout] 236 | pub unsafe fn l2_squared_avx2(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:253:35 [INFO] [stdout] | [INFO] [stdout] 253 | let va0 = _mm256_loadu_ps(a_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:254:19 [INFO] [stdout] | [INFO] [stdout] 254 | let vb0 = _mm256_loadu_ps(b_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:254:35 [INFO] [stdout] | [INFO] [stdout] 254 | let vb0 = _mm256_loadu_ps(b_ptr.add(base)); [INFO] [stdout] | ^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:258:19 [INFO] [stdout] | [INFO] [stdout] 258 | let va1 = _mm256_loadu_ps(a_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:258:35 [INFO] [stdout] | [INFO] [stdout] 258 | let va1 = _mm256_loadu_ps(a_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:259:19 [INFO] [stdout] | [INFO] [stdout] 259 | let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:259:35 [INFO] [stdout] | [INFO] [stdout] 259 | let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:263:19 [INFO] [stdout] | [INFO] [stdout] 263 | let va2 = _mm256_loadu_ps(a_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:263:35 [INFO] [stdout] | [INFO] [stdout] 263 | let va2 = _mm256_loadu_ps(a_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:264:19 [INFO] [stdout] | [INFO] [stdout] 264 | let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:264:35 [INFO] [stdout] | [INFO] [stdout] 264 | let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:268:19 [INFO] [stdout] | [INFO] [stdout] 268 | let va3 = _mm256_loadu_ps(a_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:268:35 [INFO] [stdout] | [INFO] [stdout] 268 | let va3 = _mm256_loadu_ps(a_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:269:19 [INFO] [stdout] | [INFO] [stdout] 269 | let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:269:35 [INFO] [stdout] | [INFO] [stdout] 269 | let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:276:18 [INFO] [stdout] | [INFO] [stdout] 276 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:276:34 [INFO] [stdout] | [INFO] [stdout] 276 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:277:18 [INFO] [stdout] | [INFO] [stdout] 277 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:277:34 [INFO] [stdout] | [INFO] [stdout] 277 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:297:21 [INFO] [stdout] | [INFO] [stdout] 297 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:297:43 [INFO] [stdout] | [INFO] [stdout] 297 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:319:18 [INFO] [stdout] | [INFO] [stdout] 319 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:307:1 [INFO] [stdout] | [INFO] [stdout] 307 | pub unsafe fn dot_product_avx2(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:319:34 [INFO] [stdout] | [INFO] [stdout] 319 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:320:18 [INFO] [stdout] | [INFO] [stdout] 320 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:320:34 [INFO] [stdout] | [INFO] [stdout] 320 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:335:20 [INFO] [stdout] | [INFO] [stdout] 335 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:335:42 [INFO] [stdout] | [INFO] [stdout] 335 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:360:18 [INFO] [stdout] | [INFO] [stdout] 360 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:348:1 [INFO] [stdout] | [INFO] [stdout] 348 | pub unsafe fn l2_squared_sse41(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:360:31 [INFO] [stdout] | [INFO] [stdout] 360 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:361:18 [INFO] [stdout] | [INFO] [stdout] 361 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:361:31 [INFO] [stdout] | [INFO] [stdout] 361 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:375:21 [INFO] [stdout] | [INFO] [stdout] 375 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:375:43 [INFO] [stdout] | [INFO] [stdout] 375 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:397:18 [INFO] [stdout] | [INFO] [stdout] 397 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:385:1 [INFO] [stdout] | [INFO] [stdout] 385 | pub unsafe fn dot_product_sse41(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:397:31 [INFO] [stdout] | [INFO] [stdout] 397 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:398:18 [INFO] [stdout] | [INFO] [stdout] 398 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:398:31 [INFO] [stdout] | [INFO] [stdout] 398 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:411:20 [INFO] [stdout] | [INFO] [stdout] 411 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:411:42 [INFO] [stdout] | [INFO] [stdout] 411 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:436:18 [INFO] [stdout] | [INFO] [stdout] 436 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:424:1 [INFO] [stdout] | [INFO] [stdout] 424 | pub unsafe fn l2_squared_avx512(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:436:34 [INFO] [stdout] | [INFO] [stdout] 436 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:437:18 [INFO] [stdout] | [INFO] [stdout] 437 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:437:34 [INFO] [stdout] | [INFO] [stdout] 437 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:447:21 [INFO] [stdout] | [INFO] [stdout] 447 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:447:43 [INFO] [stdout] | [INFO] [stdout] 447 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:469:18 [INFO] [stdout] | [INFO] [stdout] 469 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/simd_distance.rs:457:1 [INFO] [stdout] | [INFO] [stdout] 457 | pub unsafe fn dot_product_avx512(a: &[f32], b: &[f32]) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:469:34 [INFO] [stdout] | [INFO] [stdout] 469 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:470:18 [INFO] [stdout] | [INFO] [stdout] 470 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:470:34 [INFO] [stdout] | [INFO] [stdout] 470 | let vb = _mm512_loadu_ps(b_ptr.add(offset)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:479:20 [INFO] [stdout] | [INFO] [stdout] 479 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stdout] --> src/simd_distance.rs:479:42 [INFO] [stdout] | [INFO] [stdout] 479 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/simd_distance.rs:771:26 [INFO] [stdout] | [INFO] [stdout] 771 | let sum_scalar = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/simd_distance.rs:791:22 [INFO] [stdout] | [INFO] [stdout] 791 | let mut result = unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `hnsw::FastCandidate` is more private than the item `ScratchBuffers::fast_candidates` [INFO] [stdout] --> src/scratch_buffers.rs:217:5 [INFO] [stdout] | [INFO] [stdout] 217 | pub fast_candidates: BinaryHeap, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_candidates` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `hnsw::FastCandidate` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/hnsw.rs:927:1 [INFO] [stdout] | [INFO] [stdout] 927 | pub(crate) struct FastCandidate { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `hnsw::FastCandidate` is more private than the item `ScratchBuffers::fast_results_heap` [INFO] [stdout] --> src/scratch_buffers.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 221 | pub fast_results_heap: BinaryHeap>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_results_heap` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `hnsw::FastCandidate` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/hnsw.rs:927:1 [INFO] [stdout] | [INFO] [stdout] 927 | pub(crate) struct FastCandidate { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `needs_refinement` is never read [INFO] [stdout] --> src/hnsw.rs:2102:16 [INFO] [stdout] | [INFO] [stdout] 2046 | pub struct HnswIndex { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 2102 | pub(crate) needs_refinement: AtomicBool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_node_by_dense`, `connect_node_fast_profiled`, `search_layer_fast`, and `process_neighbors_with_prefetch` are never used [INFO] [stdout] --> src/hnsw.rs:2201:19 [INFO] [stdout] | [INFO] [stdout] 2109 | impl HnswIndex { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 2201 | pub(crate) fn get_node_by_dense(&self, dense_index: u32) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 3577 | fn connect_node_fast_profiled( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 4962 | fn search_layer_fast( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 6207 | fn process_neighbors_with_prefetch( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> src/simd_distance.rs:784:17 [INFO] [stdout] | [INFO] [stdout] 784 | sum_scalar + diff * diff; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 784 | let _ = sum_scalar + diff * diff; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Reverse` [INFO] [stdout] --> src/bin/micro_bench.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::cmp::Reverse; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ordering` [INFO] [stdout] --> src/bin/profile_hotpath.rs:8:36 [INFO] [stdout] | [INFO] [stdout] 8 | use std::sync::atomic::{AtomicU64, Ordering}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/profile_hotpath.rs:129:9 [INFO] [stdout] | [INFO] [stdout] 129 | let mut times_distance: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `times_distance` [INFO] [stdout] --> src/bin/profile_hotpath.rs:129:9 [INFO] [stdout] | [INFO] [stdout] 129 | let mut times_distance: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_times_distance` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `DISTANCE_CALLS` is never used [INFO] [stdout] --> src/bin/profile_hotpath.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | static DISTANCE_CALLS: AtomicU64 = AtomicU64::new(0); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `HEAP_PUSHES` is never used [INFO] [stdout] --> src/bin/profile_hotpath.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | static HEAP_PUSHES: AtomicU64 = AtomicU64::new(0); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `VISITED_CHECKS` is never used [INFO] [stdout] --> src/bin/profile_hotpath.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | static VISITED_CHECKS: AtomicU64 = AtomicU64::new(0); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Ordering` [INFO] [stdout] --> src/bin/profile_hotpath.rs:8:36 [INFO] [stdout] | [INFO] [stdout] 8 | use std::sync::atomic::{AtomicU64, Ordering}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/profile_hotpath.rs:129:9 [INFO] [stdout] | [INFO] [stdout] 129 | let mut times_distance: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `times_distance` [INFO] [stdout] --> src/bin/profile_hotpath.rs:129:9 [INFO] [stdout] | [INFO] [stdout] 129 | let mut times_distance: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_times_distance` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `DISTANCE_CALLS` is never used [INFO] [stdout] --> src/bin/profile_hotpath.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | static DISTANCE_CALLS: AtomicU64 = AtomicU64::new(0); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `HEAP_PUSHES` is never used [INFO] [stdout] --> src/bin/profile_hotpath.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | static HEAP_PUSHES: AtomicU64 = AtomicU64::new(0); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `VISITED_CHECKS` is never used [INFO] [stdout] --> src/bin/profile_hotpath.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | static VISITED_CHECKS: AtomicU64 = AtomicU64::new(0); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Reverse` [INFO] [stdout] --> src/bin/micro_bench.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::cmp::Reverse; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 37s [INFO] running `Command { std: "docker" "inspect" "be408977d025c830c1b0cef3831d3fdb3538bc28af6be02ff007dc327115f0b9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "be408977d025c830c1b0cef3831d3fdb3538bc28af6be02ff007dc327115f0b9", kill_on_drop: false }` [INFO] [stdout] be408977d025c830c1b0cef3831d3fdb3538bc28af6be02ff007dc327115f0b9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 5a1f3da62ef802f20ce7ba5eccf6b4c644a15dbc8e8abdea6c7598bd5653e284 [INFO] running `Command { std: "docker" "start" "-a" "5a1f3da62ef802f20ce7ba5eccf6b4c644a15dbc8e8abdea6c7598bd5653e284", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `PROFILE_COLLECTOR` [INFO] [stderr] --> src/hnsw.rs:3301:54 [INFO] [stderr] | [INFO] [stderr] 3301 | use crate::profiling::{is_profiling_enabled, PROFILE_COLLECTOR}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BinaryHeap` [INFO] [stderr] --> src/hnsw.rs:4689:13 [INFO] [stderr] | [INFO] [stderr] 4689 | use std::collections::BinaryHeap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::BinaryHeap` [INFO] [stderr] --> src/hnsw.rs:4849:13 [INFO] [stderr] | [INFO] [stderr] 4849 | use std::collections::BinaryHeap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `metrics` [INFO] [stderr] --> src/hnsw.rs:5068:15 [INFO] [stderr] | [INFO] [stderr] 5068 | #[cfg(feature = "metrics")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stderr] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `metrics` [INFO] [stderr] --> src/hnsw.rs:5070:15 [INFO] [stderr] | [INFO] [stderr] 5070 | #[cfg(feature = "metrics")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stderr] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `metrics` [INFO] [stderr] --> src/hnsw.rs:5073:15 [INFO] [stderr] | [INFO] [stderr] 5073 | #[cfg(feature = "metrics")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stderr] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `metrics` [INFO] [stderr] --> src/hnsw.rs:5258:15 [INFO] [stderr] | [INFO] [stderr] 5258 | #[cfg(feature = "metrics")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stderr] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `metrics` [INFO] [stderr] --> src/hnsw.rs:5262:15 [INFO] [stderr] | [INFO] [stderr] 5262 | #[cfg(feature = "metrics")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stderr] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `metrics` [INFO] [stderr] --> src/hnsw.rs:5077:19 [INFO] [stderr] | [INFO] [stderr] 5077 | #[cfg(feature = "metrics")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stderr] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `metrics` [INFO] [stderr] --> src/hnsw.rs:5151:19 [INFO] [stderr] | [INFO] [stderr] 5151 | #[cfg(feature = "metrics")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stderr] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `metrics` [INFO] [stderr] --> src/hnsw.rs:5154:19 [INFO] [stderr] | [INFO] [stderr] 5154 | #[cfg(feature = "metrics")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings` [INFO] [stderr] = help: consider adding `metrics` as a feature in `Cargo.toml` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Reverse` [INFO] [stderr] --> src/hnsw.rs:5747:13 [INFO] [stderr] | [INFO] [stderr] 5747 | use std::cmp::Reverse; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stderr] --> src/lockfree_hnsw.rs:137:16 [INFO] [stderr] | [INFO] [stderr] 137 | data: [u8; VECTOR_DIM], [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead [INFO] [stderr] --> src/lockfree_hnsw.rs:140:18 [INFO] [stderr] | [INFO] [stderr] 140 | impl Default for QuantizedVector { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead [INFO] [stderr] --> src/lockfree_hnsw.rs:148:6 [INFO] [stderr] | [INFO] [stderr] 148 | impl QuantizedVector { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stderr] --> src/lockfree_hnsw.rs:143:23 [INFO] [stderr] | [INFO] [stderr] 143 | data: [0; VECTOR_DIM], [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stderr] --> src/lockfree_hnsw.rs:159:13 [INFO] [stderr] | [INFO] [stderr] 159 | VECTOR_DIM, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stderr] --> src/lockfree_hnsw.rs:163:13 [INFO] [stderr] | [INFO] [stderr] 163 | VECTOR_DIM, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stderr] --> src/lockfree_hnsw.rs:166:30 [INFO] [stderr] | [INFO] [stderr] 166 | let mut data = [0u8; VECTOR_DIM]; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128. [INFO] [stderr] --> src/lockfree_hnsw.rs:176:21 [INFO] [stderr] | [INFO] [stderr] 176 | for i in 0..VECTOR_DIM { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stderr] --> src/lockfree_hnsw.rs:143:13 [INFO] [stderr] | [INFO] [stderr] 143 | data: [0; VECTOR_DIM], [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stderr] --> src/lockfree_hnsw.rs:171:16 [INFO] [stderr] | [INFO] [stderr] 171 | Self { data } [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stderr] --> src/lockfree_hnsw.rs:177:24 [INFO] [stderr] | [INFO] [stderr] 177 | let diff = self.data[i] as i32 - other.data[i] as i32; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead [INFO] [stderr] --> src/lockfree_hnsw.rs:177:46 [INFO] [stderr] | [INFO] [stderr] 177 | let diff = self.data[i] as i32 - other.data[i] as i32; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `lockfree_hnsw::AtomicNeighborList::update`: Use update_reclaim() with a UnifiedReclaimer instead — this method leaks memory [INFO] [stderr] --> src/lockfree_hnsw.rs:405:21 [INFO] [stderr] | [INFO] [stderr] 405 | if self.update(&mut mutator) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rayon::prelude` [INFO] [stderr] --> src/hnsw.rs:3444:13 [INFO] [stderr] | [INFO] [stderr] 3444 | use rayon::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/aosoa_tiles.rs:402:25 [INFO] [stderr] | [INFO] [stderr] 402 | let v_vec = _mm_loadu_ps(tile_ptr.add(d * T)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/aosoa_tiles.rs:384:5 [INFO] [stderr] | [INFO] [stderr] 384 | pub unsafe fn tile_l2_squared_avx2(&self, query: &[f32], tile_idx: usize) -> [f32; T] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/aosoa_tiles.rs:402:38 [INFO] [stderr] | [INFO] [stderr] 402 | let v_vec = _mm_loadu_ps(tile_ptr.add(d * T)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to function `std::arch::x86_64::_mm_fmadd_ps` with `#[target_feature]` is unsafe and requires unsafe block [INFO] [stderr] --> src/aosoa_tiles.rs:404:19 [INFO] [stderr] | [INFO] [stderr] 404 | acc = _mm_fmadd_ps(diff, diff, acc); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]` [INFO] [stderr] | [INFO] [stderr] = help: in order for the call to be safe, the context requires the following additional target feature: fma [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/aosoa_tiles.rs:408:9 [INFO] [stderr] | [INFO] [stderr] 408 | _mm_storeu_ps(dists.as_mut_ptr(), acc); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: unused variable: `node_dense` [INFO] [stderr] --> src/hnsw.rs:3081:25 [INFO] [stderr] | [INFO] [stderr] 3081 | let node_dense = node.dense_index; [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_dense` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `n_neighbors` [INFO] [stderr] --> src/hnsw.rs:4887:29 [INFO] [stderr] | [INFO] [stderr] 4887 | let n_neighbors = neighbors.len(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_neighbors` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/hnsw.rs:4889:30 [INFO] [stderr] | [INFO] [stderr] 4889 | for (i, &neighbor_dense) in neighbors.iter().enumerate() { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/hnsw.rs:6453:9 [INFO] [stderr] | [INFO] [stderr] 6453 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/hnsw.rs:6473:9 [INFO] [stderr] | [INFO] [stderr] 6473 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/hnsw.rs:6613:9 [INFO] [stderr] | [INFO] [stderr] 6613 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> src/hnsw.rs:6633:9 [INFO] [stderr] | [INFO] [stderr] 6633 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7044:22 [INFO] [stderr] | [INFO] [stderr] 7044 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/hnsw.rs:7030:5 [INFO] [stderr] | [INFO] [stderr] 7030 | unsafe fn cosine_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7044:38 [INFO] [stderr] | [INFO] [stderr] 7044 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7045:22 [INFO] [stderr] | [INFO] [stderr] 7045 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7045:38 [INFO] [stderr] | [INFO] [stderr] 7045 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7054:19 [INFO] [stderr] | [INFO] [stderr] 7054 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7055:22 [INFO] [stderr] | [INFO] [stderr] 7055 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7056:22 [INFO] [stderr] | [INFO] [stderr] 7056 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7088:23 [INFO] [stderr] | [INFO] [stderr] 7088 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/hnsw.rs:7069:5 [INFO] [stderr] | [INFO] [stderr] 7069 | unsafe fn cosine_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7088:39 [INFO] [stderr] | [INFO] [stderr] 7088 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7089:23 [INFO] [stderr] | [INFO] [stderr] 7089 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7089:39 [INFO] [stderr] | [INFO] [stderr] 7089 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7090:23 [INFO] [stderr] | [INFO] [stderr] 7090 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7090:39 [INFO] [stderr] | [INFO] [stderr] 7090 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7091:23 [INFO] [stderr] | [INFO] [stderr] 7091 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7091:39 [INFO] [stderr] | [INFO] [stderr] 7091 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7109:19 [INFO] [stderr] | [INFO] [stderr] 7109 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7110:22 [INFO] [stderr] | [INFO] [stderr] 7110 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7111:22 [INFO] [stderr] | [INFO] [stderr] 7111 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7143:23 [INFO] [stderr] | [INFO] [stderr] 7143 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/hnsw.rs:7124:5 [INFO] [stderr] | [INFO] [stderr] 7124 | unsafe fn cosine_distance_avx2_unrolled_1536(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7143:39 [INFO] [stderr] | [INFO] [stderr] 7143 | let va0 = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7144:23 [INFO] [stderr] | [INFO] [stderr] 7144 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7144:39 [INFO] [stderr] | [INFO] [stderr] 7144 | let vb0 = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7145:23 [INFO] [stderr] | [INFO] [stderr] 7145 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7145:39 [INFO] [stderr] | [INFO] [stderr] 7145 | let va1 = _mm256_loadu_ps(a_ptr.add(i + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7146:23 [INFO] [stderr] | [INFO] [stderr] 7146 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7146:39 [INFO] [stderr] | [INFO] [stderr] 7146 | let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7162:19 [INFO] [stderr] | [INFO] [stderr] 7162 | let dot = Self::horizontal_sum_avx2(dot_sum); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7163:22 [INFO] [stderr] | [INFO] [stderr] 7163 | let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7164:22 [INFO] [stderr] | [INFO] [stderr] 7164 | let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7187:22 [INFO] [stderr] | [INFO] [stderr] 7187 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/hnsw.rs:7176:5 [INFO] [stderr] | [INFO] [stderr] 7176 | unsafe fn l2_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7187:38 [INFO] [stderr] | [INFO] [stderr] 7187 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7188:22 [INFO] [stderr] | [INFO] [stderr] 7188 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7188:38 [INFO] [stderr] | [INFO] [stderr] 7188 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7193:9 [INFO] [stderr] | [INFO] [stderr] 7193 | Self::horizontal_sum_avx2(sum).sqrt() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7209:22 [INFO] [stderr] | [INFO] [stderr] 7209 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/hnsw.rs:7199:5 [INFO] [stderr] | [INFO] [stderr] 7199 | unsafe fn l2_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7209:38 [INFO] [stderr] | [INFO] [stderr] 7209 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7210:22 [INFO] [stderr] | [INFO] [stderr] 7210 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7210:38 [INFO] [stderr] | [INFO] [stderr] 7210 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7215:9 [INFO] [stderr] | [INFO] [stderr] 7215 | Self::horizontal_sum_avx2(sum).sqrt() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7231:22 [INFO] [stderr] | [INFO] [stderr] 7231 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/hnsw.rs:7221:5 [INFO] [stderr] | [INFO] [stderr] 7221 | unsafe fn dot_product_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7231:38 [INFO] [stderr] | [INFO] [stderr] 7231 | let va = _mm256_loadu_ps(a_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7232:22 [INFO] [stderr] | [INFO] [stderr] 7232 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7232:38 [INFO] [stderr] | [INFO] [stderr] 7232 | let vb = _mm256_loadu_ps(b_ptr.add(i)); [INFO] [stderr] | ^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block [INFO] [stderr] --> src/hnsw.rs:7236:9 [INFO] [stderr] | [INFO] [stderr] 7236 | Self::horizontal_sum_avx2(sum) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: unused variable: `reachable` [INFO] [stderr] --> src/hnsw.rs:8045:14 [INFO] [stderr] | [INFO] [stderr] 8045 | let (reachable, total, orphans) = self.diagnose_connectivity(); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reachable` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `total` [INFO] [stderr] --> src/hnsw.rs:8045:25 [INFO] [stderr] | [INFO] [stderr] 8045 | let (reachable, total, orphans) = self.diagnose_connectivity(); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_total` [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/optimized_search.rs:431:22 [INFO] [stderr] | [INFO] [stderr] 431 | let va = _mm256_loadu_ps(a.as_ptr().add(idx)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/optimized_search.rs:420:5 [INFO] [stderr] | [INFO] [stderr] 420 | unsafe fn euclidean_distance_avx2(&self, a: &[f32], b: &[f32]) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/optimized_search.rs:431:38 [INFO] [stderr] | [INFO] [stderr] 431 | let va = _mm256_loadu_ps(a.as_ptr().add(idx)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/optimized_search.rs:432:22 [INFO] [stderr] | [INFO] [stderr] 432 | let vb = _mm256_loadu_ps(b.as_ptr().add(idx)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/optimized_search.rs:432:38 [INFO] [stderr] | [INFO] [stderr] 432 | let vb = _mm256_loadu_ps(b.as_ptr().add(idx)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stderr] --> src/unified_quant.rs:389:22 [INFO] [stderr] | [INFO] [stderr] 389 | let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/unified_quant.rs:379:5 [INFO] [stderr] | [INFO] [stderr] 379 | unsafe fn dot_i8_avx2(a: &[i8], b: &[i8]) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/unified_quant.rs:389:41 [INFO] [stderr] | [INFO] [stderr] 389 | let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stderr] --> src/unified_quant.rs:390:22 [INFO] [stderr] | [INFO] [stderr] 390 | let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/unified_quant.rs:390:41 [INFO] [stderr] | [INFO] [stderr] 390 | let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:188:18 [INFO] [stderr] | [INFO] [stderr] 188 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/predicated_simd.rs:177:5 [INFO] [stderr] | [INFO] [stderr] 177 | unsafe fn blend_avx2(a: [f32; 4], b: [f32; 4], mask: SimdMask) -> [f32; 4] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:189:18 [INFO] [stderr] | [INFO] [stderr] 189 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_si128` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:190:18 [INFO] [stderr] | [INFO] [stderr] 190 | let vm = _mm_loadu_si128(mask_expanded.as_ptr() as *const __m128i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:195:9 [INFO] [stderr] | [INFO] [stderr] 195 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:266:18 [INFO] [stderr] | [INFO] [stderr] 266 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/predicated_simd.rs:264:5 [INFO] [stderr] | [INFO] [stderr] 264 | unsafe fn min_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:267:18 [INFO] [stderr] | [INFO] [stderr] 267 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:270:9 [INFO] [stderr] | [INFO] [stderr] 270 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:313:18 [INFO] [stderr] | [INFO] [stderr] 313 | let va = _mm_loadu_ps(a.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/predicated_simd.rs:311:5 [INFO] [stderr] | [INFO] [stderr] 311 | unsafe fn max_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:314:18 [INFO] [stderr] | [INFO] [stderr] 314 | let vb = _mm_loadu_ps(b.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:317:9 [INFO] [stderr] | [INFO] [stderr] 317 | _mm_storeu_ps(out.as_mut_ptr(), result); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:474:18 [INFO] [stderr] | [INFO] [stderr] 474 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/predicated_simd.rs:459:5 [INFO] [stderr] | [INFO] [stderr] 459 | unsafe fn blend_avx2(a: [f32; 8], b: [f32; 8], mask: u8) -> [f32; 8] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:475:18 [INFO] [stderr] | [INFO] [stderr] 475 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:476:18 [INFO] [stderr] | [INFO] [stderr] 476 | let vm = _mm256_loadu_si256(mask_expanded.as_ptr() as *const __m256i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:481:9 [INFO] [stderr] | [INFO] [stderr] 481 | _mm256_storeu_ps(out.as_mut_ptr(), result); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:507:18 [INFO] [stderr] | [INFO] [stderr] 507 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/predicated_simd.rs:505:5 [INFO] [stderr] | [INFO] [stderr] 505 | unsafe fn min_avx2(a: [f32; 8], b: [f32; 8]) -> [f32; 8] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:508:18 [INFO] [stderr] | [INFO] [stderr] 508 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:511:9 [INFO] [stderr] | [INFO] [stderr] 511 | _mm256_storeu_ps(out.as_mut_ptr(), result); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:539:18 [INFO] [stderr] | [INFO] [stderr] 539 | let va = _mm256_loadu_ps(a.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/predicated_simd.rs:537:5 [INFO] [stderr] | [INFO] [stderr] 537 | unsafe fn cmp_lt_avx2(a: [f32; 8], b: [f32; 8]) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/predicated_simd.rs:540:18 [INFO] [stderr] | [INFO] [stderr] 540 | let vb = _mm256_loadu_ps(b.as_ptr()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:132:21 [INFO] [stderr] | [INFO] [stderr] 132 | query_ptr.add(prefetch_d) as *const i8, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/simd_batch_distance.rs:104:5 [INFO] [stderr] | [INFO] [stderr] 104 | / pub unsafe fn batch_l2_squared_8x( [INFO] [stderr] 105 | | query: &[f32], [INFO] [stderr] 106 | | candidates: &[&[f32]; 8], [INFO] [stderr] 107 | | dimension: usize, [INFO] [stderr] 108 | | ) -> [f32; 8] { [INFO] [stderr] | |_________________^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:136:34 [INFO] [stderr] | [INFO] [stderr] 136 | _mm_prefetch(c.as_ptr().add(prefetch_d) as *const i8, _MM_HINT_T0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:141:21 [INFO] [stderr] | [INFO] [stderr] 141 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:141:37 [INFO] [stderr] | [INFO] [stderr] 141 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:29 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 152 | process_candidate!(0, acc0); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:45 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 152 | process_candidate!(0, acc0); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:29 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 153 | process_candidate!(1, acc1); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:45 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 153 | process_candidate!(1, acc1); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:29 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 154 | process_candidate!(2, acc2); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:45 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 154 | process_candidate!(2, acc2); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:29 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 155 | process_candidate!(3, acc3); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:45 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 155 | process_candidate!(3, acc3); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:29 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 156 | process_candidate!(4, acc4); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:45 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 156 | process_candidate!(4, acc4); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:29 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 157 | process_candidate!(5, acc5); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:45 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 157 | process_candidate!(5, acc5); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:29 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 158 | process_candidate!(6, acc6); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:45 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 158 | process_candidate!(6, acc6); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:29 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 159 | process_candidate!(7, acc7); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:146:45 [INFO] [stderr] | [INFO] [stderr] 146 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 159 | process_candidate!(7, acc7); [INFO] [stderr] | --------------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:166:30 [INFO] [stderr] | [INFO] [stderr] 166 | let q_val = *query.get_unchecked(d); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:168:34 [INFO] [stderr] | [INFO] [stderr] 168 | let c_val = *candidate.get_unchecked(d); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:187:13 [INFO] [stderr] | [INFO] [stderr] 187 | hsum_256(acc0), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:188:13 [INFO] [stderr] | [INFO] [stderr] 188 | hsum_256(acc1), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:189:13 [INFO] [stderr] | [INFO] [stderr] 189 | hsum_256(acc2), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:190:13 [INFO] [stderr] | [INFO] [stderr] 190 | hsum_256(acc3), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:191:13 [INFO] [stderr] | [INFO] [stderr] 191 | hsum_256(acc4), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:192:13 [INFO] [stderr] | [INFO] [stderr] 192 | hsum_256(acc5), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:193:13 [INFO] [stderr] | [INFO] [stderr] 193 | hsum_256(acc6), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:194:13 [INFO] [stderr] | [INFO] [stderr] 194 | hsum_256(acc7), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:241:30 [INFO] [stderr] | [INFO] [stderr] 241 | _mm_prefetch(query_ptr.add(prefetch_d) as *const i8, _MM_HINT_T0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/simd_batch_distance.rs:217:5 [INFO] [stderr] | [INFO] [stderr] 217 | / pub unsafe fn batch_dot_product_8x( [INFO] [stderr] 218 | | query: &[f32], [INFO] [stderr] 219 | | candidates: &[&[f32]; 8], [INFO] [stderr] 220 | | dimension: usize, [INFO] [stderr] 221 | | ) -> [f32; 8] { [INFO] [stderr] | |_________________^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:244:21 [INFO] [stderr] | [INFO] [stderr] 244 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:244:37 [INFO] [stderr] | [INFO] [stderr] 244 | let q = _mm256_loadu_ps(query_ptr.add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:29 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 253 | process_dot!(0, acc0); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:45 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 253 | process_dot!(0, acc0); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:29 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 254 | process_dot!(1, acc1); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:45 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 254 | process_dot!(1, acc1); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:29 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 255 | process_dot!(2, acc2); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:45 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 255 | process_dot!(2, acc2); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:29 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 256 | process_dot!(3, acc3); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:45 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 256 | process_dot!(3, acc3); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:29 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 257 | process_dot!(4, acc4); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:45 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 257 | process_dot!(4, acc4); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:29 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 258 | process_dot!(5, acc5); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:45 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 258 | process_dot!(5, acc5); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:29 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 259 | process_dot!(6, acc6); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:45 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 259 | process_dot!(6, acc6); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:29 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 260 | process_dot!(7, acc7); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:248:45 [INFO] [stderr] | [INFO] [stderr] 248 | let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] ... [INFO] [stderr] 260 | process_dot!(7, acc7); [INFO] [stderr] | --------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:266:26 [INFO] [stderr] | [INFO] [stderr] 266 | let q_val = *query.get_unchecked(d); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:268:30 [INFO] [stderr] | [INFO] [stderr] 268 | let c_val = *candidate.get_unchecked(d); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:284:13 [INFO] [stderr] | [INFO] [stderr] 284 | hsum_256(acc0), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:285:13 [INFO] [stderr] | [INFO] [stderr] 285 | hsum_256(acc1), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:286:13 [INFO] [stderr] | [INFO] [stderr] 286 | hsum_256(acc2), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:287:13 [INFO] [stderr] | [INFO] [stderr] 287 | hsum_256(acc3), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:288:13 [INFO] [stderr] | [INFO] [stderr] 288 | hsum_256(acc4), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:289:13 [INFO] [stderr] | [INFO] [stderr] 289 | hsum_256(acc5), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:290:13 [INFO] [stderr] | [INFO] [stderr] 290 | hsum_256(acc6), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_batch_distance.rs:291:13 [INFO] [stderr] | [INFO] [stderr] 291 | hsum_256(acc7), [INFO] [stderr] | ^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:253:19 [INFO] [stderr] | [INFO] [stderr] 253 | let va0 = _mm256_loadu_ps(a_ptr.add(base)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/simd_distance.rs:236:1 [INFO] [stderr] | [INFO] [stderr] 236 | pub unsafe fn l2_squared_avx2(a: &[f32], b: &[f32]) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:253:35 [INFO] [stderr] | [INFO] [stderr] 253 | let va0 = _mm256_loadu_ps(a_ptr.add(base)); [INFO] [stderr] | ^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:254:19 [INFO] [stderr] | [INFO] [stderr] 254 | let vb0 = _mm256_loadu_ps(b_ptr.add(base)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:254:35 [INFO] [stderr] | [INFO] [stderr] 254 | let vb0 = _mm256_loadu_ps(b_ptr.add(base)); [INFO] [stderr] | ^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:258:19 [INFO] [stderr] | [INFO] [stderr] 258 | let va1 = _mm256_loadu_ps(a_ptr.add(base + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:258:35 [INFO] [stderr] | [INFO] [stderr] 258 | let va1 = _mm256_loadu_ps(a_ptr.add(base + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:259:19 [INFO] [stderr] | [INFO] [stderr] 259 | let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:259:35 [INFO] [stderr] | [INFO] [stderr] 259 | let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:263:19 [INFO] [stderr] | [INFO] [stderr] 263 | let va2 = _mm256_loadu_ps(a_ptr.add(base + 16)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:263:35 [INFO] [stderr] | [INFO] [stderr] 263 | let va2 = _mm256_loadu_ps(a_ptr.add(base + 16)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:264:19 [INFO] [stderr] | [INFO] [stderr] 264 | let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:264:35 [INFO] [stderr] | [INFO] [stderr] 264 | let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:268:19 [INFO] [stderr] | [INFO] [stderr] 268 | let va3 = _mm256_loadu_ps(a_ptr.add(base + 24)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:268:35 [INFO] [stderr] | [INFO] [stderr] 268 | let va3 = _mm256_loadu_ps(a_ptr.add(base + 24)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:269:19 [INFO] [stderr] | [INFO] [stderr] 269 | let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:269:35 [INFO] [stderr] | [INFO] [stderr] 269 | let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:276:18 [INFO] [stderr] | [INFO] [stderr] 276 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:276:34 [INFO] [stderr] | [INFO] [stderr] 276 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:277:18 [INFO] [stderr] | [INFO] [stderr] 277 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:277:34 [INFO] [stderr] | [INFO] [stderr] 277 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:297:21 [INFO] [stderr] | [INFO] [stderr] 297 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:297:43 [INFO] [stderr] | [INFO] [stderr] 297 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:319:18 [INFO] [stderr] | [INFO] [stderr] 319 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/simd_distance.rs:307:1 [INFO] [stderr] | [INFO] [stderr] 307 | pub unsafe fn dot_product_avx2(a: &[f32], b: &[f32]) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:319:34 [INFO] [stderr] | [INFO] [stderr] 319 | let va = _mm256_loadu_ps(a_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:320:18 [INFO] [stderr] | [INFO] [stderr] 320 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:320:34 [INFO] [stderr] | [INFO] [stderr] 320 | let vb = _mm256_loadu_ps(b_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:335:20 [INFO] [stderr] | [INFO] [stderr] 335 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:335:42 [INFO] [stderr] | [INFO] [stderr] 335 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:360:18 [INFO] [stderr] | [INFO] [stderr] 360 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/simd_distance.rs:348:1 [INFO] [stderr] | [INFO] [stderr] 348 | pub unsafe fn l2_squared_sse41(a: &[f32], b: &[f32]) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:360:31 [INFO] [stderr] | [INFO] [stderr] 360 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:361:18 [INFO] [stderr] | [INFO] [stderr] 361 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:361:31 [INFO] [stderr] | [INFO] [stderr] 361 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:375:21 [INFO] [stderr] | [INFO] [stderr] 375 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:375:43 [INFO] [stderr] | [INFO] [stderr] 375 | let diff = *a.get_unchecked(i) - *b.get_unchecked(i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:397:18 [INFO] [stderr] | [INFO] [stderr] 397 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/simd_distance.rs:385:1 [INFO] [stderr] | [INFO] [stderr] 385 | pub unsafe fn dot_product_sse41(a: &[f32], b: &[f32]) -> f32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:397:31 [INFO] [stderr] | [INFO] [stderr] 397 | let va = _mm_loadu_ps(a_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:398:18 [INFO] [stderr] | [INFO] [stderr] 398 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::::add` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:398:31 [INFO] [stderr] | [INFO] [stderr] 398 | let vb = _mm_loadu_ps(b_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:411:20 [INFO] [stderr] | [INFO] [stderr] 411 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `core::slice::::get_unchecked` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:411:42 [INFO] [stderr] | [INFO] [stderr] 411 | result += *a.get_unchecked(i) * *b.get_unchecked(i); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block [INFO] [stderr] --> src/simd_distance.rs:436:18 [INFO] [stderr] | [INFO] [stderr] 436 | let va = _mm512_loadu_ps(a_ptr.add(offset)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stderr] | [INFO] [stderr] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stderr] --> src/simd_distance.rs:424:1 [INFO] [stderr] | [INFO] [stderr] 424 | pub unsafe fn l2_squared_avx512(a: &[f32], b: &[f32]) -> f32 { [WARN] too many lines in the log, truncating it