Package evaluation to test SimilaritySearch on Julia 1.14.0-DEV.1730 (9c1e1fa299*) started at 2026-02-17T16:57:02.226 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Activating project at `~/.julia/environments/v1.14` Set-up completed after 13.89s ################################################################################ # Installation # Installing SimilaritySearch... Resolving package versions... Updating `~/.julia/environments/v1.14/Project.toml` [053f045d] + SimilaritySearch v0.13.8 Updating `~/.julia/environments/v1.14/Manifest.toml` [7d9f7c33] + Accessors v0.1.43 [79e6a3ab] + Adapt v4.4.0 [4fba245c] + ArrayInterface v7.22.0 [fb6a15b2] + CloseOpenIntervals v0.1.13 [f70d9fcc] + CommonWorldInvalidations v1.0.0 [34da2185] + Compat v4.18.1 [a33af91c] + CompositionsBase v0.1.2 [187b0558] + ConstructionBase v1.6.0 [9a962f9c] + DataAPI v1.16.0 ⌅ [864edb3b] + DataStructures v0.18.22 [b4f34e82] + Distances v0.10.12 [ffbed154] + DocStringExtensions v0.9.5 [615f187c] + IfElse v0.1.1 [3587e190] + InverseFunctions v0.1.17 [92d709cd] + IrrationalConstants v0.2.6 [10f19ff3] + LayoutPointers v0.1.17 [2ab3a3ac] + LogExpFunctions v0.3.29 [1914dd2f] + MacroTools v0.5.16 [d125e4d3] + ManualMemory v0.1.8 [e1d29d7a] + Missings v1.2.0 [bac558e1] + OrderedCollections v1.8.1 [aea7be01] + PrecompileTools v1.3.3 [21216c6a] + Preferences v1.5.1 [92933f4c] + ProgressMeter v1.11.0 [ae029012] + Requires v1.3.1 [94e857df] + SIMDTypes v0.1.0 [431bcebd] + SciMLPublic v1.0.1 [0e966ebe] + SearchModels v0.5.0 [053f045d] + SimilaritySearch v0.13.8 [a2af1166] + SortingAlgorithms v1.2.2 [aedffcd0] + Static v1.3.1 [0d7ed370] + StaticArrayInterface v1.9.0 [10745b16] + Statistics v1.11.1 [82ae8749] + StatsAPI v1.8.0 ⌅ [2913bbd2] + StatsBase v0.33.21 [7792a7ef] + StrideArraysCore v0.5.8 [8290d209] + ThreadingUtilities v0.5.5 [56f22d72] + Artifacts v1.11.0 [2a0f44e3] + Base64 v1.11.0 [ade2ca70] + Dates v1.11.0 [8ba89e20] + Distributed v1.11.0 [b77e0a4c] + InteractiveUtils v1.11.0 [ac6e5ff7] + JuliaSyntaxHighlighting v1.13.0 [8f399da3] + Libdl v1.11.0 [37e2e46d] + LinearAlgebra v1.13.0 [d6f4376e] + Markdown v1.11.0 [de0858da] + Printf v1.11.0 [9a3f8284] + Random v1.11.0 [ea8e919c] + SHA v1.0.0 [9e88b42a] + Serialization v1.11.0 [6462fe0b] + Sockets v1.11.0 [2f01184e] + SparseArrays v1.13.0 [f489334b] + StyledStrings v1.13.0 [fa267f1f] + TOML v1.0.3 [cf7118a7] + UUIDs v1.11.0 [4ec0a83e] + Unicode v1.11.0 [e66e0078] + CompilerSupportLibraries_jll v1.3.0+1 [4536629a] + OpenBLAS_jll v0.3.30+0 [bea87d4a] + SuiteSparse_jll v7.10.1+0 [8e850b90] + libblastrampoline_jll v5.15.0+0 Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m` Installation completed after 5.16s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... Precompiling package dependencies... Precompiling packages... 3308.3 ms ✓ SearchModels 7134.8 ms ✓ SimilaritySearch 2 dependencies successfully precompiled in 11 seconds. 81 already precompiled. Precompilation completed after 36.29s ################################################################################ # Testing # Testing SimilaritySearch Status `/tmp/jl_CU5biE/Project.toml` [7d9f7c33] Accessors v0.1.43 [4c88cf16] Aqua v0.8.14 [b4f34e82] Distances v0.10.12 [92933f4c] ProgressMeter v1.11.0 [0e966ebe] SearchModels v0.5.0 [053f045d] SimilaritySearch v0.13.8 [10745b16] Statistics v1.11.1 ⌅ [2913bbd2] StatsBase v0.33.21 [7792a7ef] StrideArraysCore v0.5.8 [ade2ca70] Dates v1.11.0 [37e2e46d] LinearAlgebra v1.13.0 [9a3f8284] Random v1.11.0 [2f01184e] SparseArrays v1.13.0 [8dfed614] Test v1.11.0 Status `/tmp/jl_CU5biE/Manifest.toml` [7d9f7c33] Accessors v0.1.43 [79e6a3ab] Adapt v4.4.0 [4c88cf16] Aqua v0.8.14 [4fba245c] ArrayInterface v7.22.0 [fb6a15b2] CloseOpenIntervals v0.1.13 [f70d9fcc] CommonWorldInvalidations v1.0.0 [34da2185] Compat v4.18.1 [a33af91c] CompositionsBase v0.1.2 [187b0558] ConstructionBase v1.6.0 [9a962f9c] DataAPI v1.16.0 ⌅ [864edb3b] DataStructures v0.18.22 [b4f34e82] Distances v0.10.12 [ffbed154] DocStringExtensions v0.9.5 [615f187c] IfElse v0.1.1 [3587e190] InverseFunctions v0.1.17 [92d709cd] IrrationalConstants v0.2.6 [10f19ff3] LayoutPointers v0.1.17 [2ab3a3ac] LogExpFunctions v0.3.29 [1914dd2f] MacroTools v0.5.16 [d125e4d3] ManualMemory v0.1.8 [e1d29d7a] Missings v1.2.0 [bac558e1] OrderedCollections v1.8.1 [aea7be01] PrecompileTools v1.3.3 [21216c6a] Preferences v1.5.1 [92933f4c] ProgressMeter v1.11.0 [ae029012] Requires v1.3.1 [94e857df] SIMDTypes v0.1.0 [431bcebd] SciMLPublic v1.0.1 [0e966ebe] SearchModels v0.5.0 [053f045d] SimilaritySearch v0.13.8 [a2af1166] SortingAlgorithms v1.2.2 [aedffcd0] Static v1.3.1 [0d7ed370] StaticArrayInterface v1.9.0 [10745b16] Statistics v1.11.1 [82ae8749] StatsAPI v1.8.0 ⌅ [2913bbd2] StatsBase v0.33.21 [7792a7ef] StrideArraysCore v0.5.8 [8290d209] ThreadingUtilities v0.5.5 [0dad84c5] ArgTools v1.1.2 [56f22d72] Artifacts v1.11.0 [2a0f44e3] Base64 v1.11.0 [ade2ca70] Dates v1.11.0 [8ba89e20] Distributed v1.11.0 [f43a241f] Downloads v1.7.0 [7b1f6079] FileWatching v1.11.0 [b77e0a4c] InteractiveUtils v1.11.0 [ac6e5ff7] JuliaSyntaxHighlighting v1.13.0 [b27032c2] LibCURL v1.0.0 [76f85450] LibGit2 v1.11.0 [8f399da3] Libdl v1.11.0 [37e2e46d] LinearAlgebra v1.13.0 [56ddb016] Logging v1.11.0 [d6f4376e] Markdown v1.11.0 [ca575930] NetworkOptions v1.3.0 [44cfe95a] Pkg v1.14.0 [de0858da] Printf v1.11.0 [9a3f8284] Random v1.11.0 [ea8e919c] SHA v1.0.0 [9e88b42a] Serialization v1.11.0 [6462fe0b] Sockets v1.11.0 [2f01184e] SparseArrays v1.13.0 [f489334b] StyledStrings v1.13.0 [fa267f1f] TOML v1.0.3 [a4e569a6] Tar v1.10.0 [8dfed614] Test v1.11.0 [cf7118a7] UUIDs v1.11.0 [4ec0a83e] Unicode v1.11.0 [e66e0078] CompilerSupportLibraries_jll v1.3.0+1 [deac9b47] LibCURL_jll v8.18.0+0 [e37daf67] LibGit2_jll v1.9.2+0 [29816b5a] LibSSH2_jll v1.11.3+1 [14a3606d] MozillaCACerts_jll v2025.12.2 [4536629a] OpenBLAS_jll v0.3.30+0 [458c3c95] OpenSSL_jll v3.5.5+0 [efcefdf7] PCRE2_jll v10.47.0+0 [bea87d4a] SuiteSparse_jll v7.10.1+0 [83775a58] Zlib_jll v1.3.1+2 [3161d3a3] Zstd_jll v1.5.7+1 [8e850b90] libblastrampoline_jll v5.15.0+0 [8e850ede] nghttp2_jll v1.68.0+1 [3f19e933] p7zip_jll v17.7.0+0 Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. Testing Running tests... Test Summary: | Pass Total Time test database abstractions | 57 57 18.6s Test Summary: | Pass Total Time heap | 16 16 0.1s Test Summary: | Pass Total Time KnnHeap | 30005 30005 4.0s Test Summary: | Pass Total Time XKnn | 25005 25005 3.2s Test Summary: | Pass Total Time XKnn pop ops | 9603 9603 1.3s [ Info: (MatrixDatabase{Matrix{Float32}}, SubDatabase{MatrixDatabase{Matrix{Float32}}, Vector{Int64}}) 6.399677 seconds (401.00 k allocations: 24.717 MiB, 39.42% compilation time) 3.876997 seconds (7 allocations: 512 bytes) 5.798446 seconds (255.89 k allocations: 16.085 MiB, 34.13% compilation time) 3.774782 seconds (7 allocations: 512 bytes) 5.622001 seconds (239.65 k allocations: 15.188 MiB, 36.14% compilation time) 3.630887 seconds (7 allocations: 512 bytes) 5.889279 seconds (235.08 k allocations: 14.924 MiB, 1.66% gc time, 38.60% compilation time) 3.574573 seconds (7 allocations: 512 bytes) 16.744426 seconds (247.56 k allocations: 15.588 MiB, 13.86% compilation time) 14.405075 seconds (7 allocations: 512 bytes) 27.571949 seconds (7 allocations: 512 bytes) 27.322528 seconds (7 allocations: 512 bytes) 20.241416 seconds (511.71 k allocations: 31.516 MiB, 8.00% compilation time) 18.591928 seconds (7 allocations: 512 bytes) 17.684064 seconds (406.88 k allocations: 25.470 MiB, 0.45% gc time, 7.16% compilation time) 16.509839 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time indexing vectors with ExhaustiveSearch | 8000 8000 3m23.6s [ Info: (VectorDatabase{Vector{Vector{Int64}}}, SubDatabase{VectorDatabase{Vector{Vector{Int64}}}, Vector{Int64}}) 4.639059 seconds (169.02 k allocations: 11.273 MiB, 40.66% compilation time) 2.833246 seconds (7 allocations: 512 bytes) 30.153838 seconds (210.48 k allocations: 13.629 MiB, 0.27% gc time, 8.16% compilation time) 27.755154 seconds (7 allocations: 528 bytes) 27.808956 seconds (7 allocations: 528 bytes) 27.679186 seconds (7 allocations: 528 bytes) 5.868114 seconds (152.92 k allocations: 9.926 MiB, 40.71% compilation time) 3.431744 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time indexing sequences with ExhaustiveSearch | 4000 4000 2m12.5s [ Info: (VectorDatabase{Vector{Vector{Int64}}}, SubDatabase{VectorDatabase{Vector{Vector{Int64}}}, Vector{Int64}}) 12.926682 seconds (165.79 k allocations: 10.783 MiB, 16.48% compilation time) 9.886543 seconds (7 allocations: 512 bytes) 13.456442 seconds (154.66 k allocations: 10.078 MiB, 2.21% gc time, 15.33% compilation time) 10.897462 seconds (7 allocations: 512 bytes) 12.962374 seconds (154.57 k allocations: 10.073 MiB, 16.90% compilation time) 11.057233 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time indexing sets with ExhaustiveSearch | 3000 3000 1m13.1s 1.142836 seconds (227.56 k allocations: 14.253 MiB, 96.46% compilation time) 0.040510 seconds (7 allocations: 512 bytes) 2.036998 seconds (235.80 k allocations: 15.068 MiB, 1.83% gc time, 98.14% compilation time) 0.037814 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time Normalized Cosine and Normalized Angle distances | 2000 2000 5.1s 2.099819 seconds (289.78 k allocations: 17.803 MiB, 97.23% compilation time) 0.058179 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time Binary hamming distance | 1000 1000 2.7s allknn 2%|▉ | ETA: 0:03:36 allknn 100%|█████████████████████████████████████████████| Time: 0:00:04 ExhaustiveSearch allknn: 5.093621 seconds (1.81 M allocations: 110.539 MiB, 1.63% gc time, 99.95% compilation time) Test Summary: | Pass Total Time allknn | 1 1 5.3s quantile(length.(hsp_knns), 0:0.1:1) = [2.0, 4.0, 4.0, 4.0, 4.0, 4.0, 4.0, 4.0, 5.0, 5.0, 5.0] Test Summary: | Total Time HSP | 0 5.5s [ Info: neardup> starting: 1:100, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:07.837 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:06:08.593 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] LOG add_vertex! sp=2 ep=2 n=2 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:06:12.178 LOG n.size quantiles:[1.0, 1.0, 1.0, 1.0, 1.0] LOG add_vertex! sp=5 ep=9 n=4 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:06:14.216 LOG n.size quantiles:[1.0, 1.0, 2.0, 2.0, 2.0] [ Info: neardup> finished current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:14.737 D.map = UInt32[0x00000001, 0x00000002, 0x00000005, 0x0000000a, 0x00000010, 0x00000014, 0x00000015, 0x00000016, 0x00000031, 0x00000033, 0x00000058] D.nn = Int32[1, 2, 1, 2, 5, 1, 2, 2, 2, 10, 10, 1, 2, 10, 1, 16, 2, 1, 1, 20, 21, 22, 16, 1, 10, 22, 5, 1, 1, 1, 1, 10, 1, 21, 10, 16, 10, 5, 1, 10, 21, 21, 1, 16, 16, 1, 10, 10, 49, 1, 51, 22, 21, 16, 1, 20, 21, 10, 2, 10, 20, 1, 21, 49, 16, 49, 51, 16, 16, 22, 22, 49, 20, 16, 1, 49, 2, 2, 20, 49, 2, 2, 49, 16, 10, 1, 1, 88, 49, 20, 10, 1, 49, 49, 10, 5, 16, 51, 10, 1] D.dist = Float32[0.0, 0.0, 0.060869753, 0.03833443, 0.0, 0.07689232, 0.005671203, 0.043157518, 0.095935285, 0.0, 0.022707224, 0.08210516, 0.0972895, 0.039222717, 0.053628623, 0.0, 0.018312335, 0.070427954, 0.036316693, 0.0, 0.0, 0.0, 0.03934163, 0.05896926, 0.07982284, 0.02933675, 0.037630916, 0.083339155, 0.023002267, 0.060494244, 0.02401799, 0.07288116, 0.061572075, 0.03490156, 0.034860432, 0.03668481, 0.09456605, 0.020549059, 0.048783183, 0.03687018, 0.010358453, 0.017148256, 0.039230227, 0.06455159, 0.012111485, 0.028478503, 0.035551548, 0.08040768, 0.0, 0.023404062, 0.0, 0.09932631, 0.059657454, 0.06035489, 0.019562423, 0.04872781, 0.005203128, 0.06170845, 0.026166916, 0.08657956, 0.031094432, 0.022651374, 0.002434373, 0.009412408, 0.06195557, 0.07682556, 0.0449847, 0.039876938, 0.05202031, 0.035022497, 0.085592926, 0.06253415, 0.045373738, 0.018809497, 0.059638858, 0.05820346, 0.05151695, 0.043613374, 0.014776826, 0.06706005, 0.058496177, 0.0071326494, 0.025646985, 0.030626833, 0.04278195, 0.03547156, 0.015985787, 0.0, 0.068570495, 0.050896287, 0.07402396, 0.016327977, 0.02540189, 0.025722265, 0.023417473, 0.02724576, 0.082423806, 0.01472497, 0.037911654, 0.0038776994] Test Summary: | Pass Total Time neardup single block | 3 3 24.2s [ Info: neardup> starting: 1:16, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:16.082 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:06:16.082 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] [ Info: neardup> range: 17:32, current elements: 5, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.105 LOG add_vertex! sp=6 ep=8 n=5 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:06:20.105 LOG n.size quantiles:[1.0, 1.5, 2.0, 2.0, 2.0] [ Info: neardup> range: 33:48, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.105 [ Info: neardup> range: 49:64, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.105 [ Info: neardup> range: 65:80, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.106 [ Info: neardup> range: 81:96, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.106 [ Info: neardup> range: 97:100, current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.430 [ Info: neardup> finished current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.431 D.map = UInt32[0x00000001, 0x00000002, 0x00000005, 0x0000000a, 0x00000010, 0x00000014, 0x00000015, 0x00000016, 0x00000031, 0x00000033, 0x00000058] D.nn = Int32[1, 2, 1, 2, 5, 1, 2, 2, 2, 10, 10, 1, 2, 10, 1, 16, 2, 1, 1, 20, 21, 22, 16, 1, 10, 22, 5, 1, 1, 1, 1, 10, 1, 21, 10, 16, 10, 5, 1, 10, 21, 21, 1, 16, 16, 1, 10, 10, 49, 1, 51, 22, 21, 16, 1, 20, 21, 10, 2, 10, 20, 1, 21, 2, 16, 49, 51, 16, 16, 22, 22, 49, 20, 16, 1, 49, 2, 2, 20, 49, 2, 2, 49, 16, 10, 1, 1, 88, 49, 20, 10, 1, 49, 49, 10, 5, 16, 51, 10, 1] D.dist = Float32[0.0, 0.0, 0.060869753, 0.03833443, 0.0, 0.07689232, 0.005671203, 0.043157518, 0.095935285, 0.0, 0.022707224, 0.08210516, 0.0972895, 0.039222717, 0.053628623, 0.0, 0.018312335, 0.070427954, 0.036316693, 0.0, 0.0, 0.0, 0.03934163, 0.05896926, 0.07982284, 0.02933675, 0.037630916, 0.083339155, 0.023002267, 0.060494244, 0.02401799, 0.07288116, 0.061572075, 0.03490156, 0.034860432, 0.03668481, 0.09456605, 0.020549059, 0.048783183, 0.03687018, 0.010358453, 0.017148256, 0.039230227, 0.06455159, 0.012111485, 0.028478503, 0.035551548, 0.08040768, 0.0, 0.023404062, 0.0, 0.09932631, 0.059657454, 0.06035489, 0.019562423, 0.04872781, 0.005203128, 0.06170845, 0.026166916, 0.08657956, 0.031094432, 0.022651374, 0.002434373, 0.07014978, 0.06195557, 0.07682556, 0.0449847, 0.039876938, 0.05202031, 0.035022497, 0.085592926, 0.06253415, 0.045373738, 0.018809497, 0.059638858, 0.05820346, 0.05151695, 0.043613374, 0.014776826, 0.06706005, 0.058496177, 0.0071326494, 0.025646985, 0.030626833, 0.04278195, 0.03547156, 0.015985787, 0.0, 0.068570495, 0.050896287, 0.07402396, 0.016327977, 0.02540189, 0.025722265, 0.023417473, 0.02724576, 0.082423806, 0.01472497, 0.037911654, 0.0038776994] Test Summary: | Pass Total Time neardup small block | 3 3 4.4s [ Info: neardup> starting: 1:16, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.532 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:06:20.533 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] [ Info: neardup> range: 17:32, current elements: 16, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.534 [ Info: neardup> range: 33:48, current elements: 18, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.534 [ Info: neardup> range: 49:64, current elements: 18, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.534 [ Info: neardup> range: 65:80, current elements: 19, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.534 [ Info: neardup> range: 81:96, current elements: 19, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.534 [ Info: neardup> range: 97:100, current elements: 19, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.534 [ Info: neardup> finished current elements: 19, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:20.534 D.map = UInt32[0x00000001, 0x00000002, 0x00000003, 0x00000004, 0x00000005, 0x00000006, 0x00000007, 0x00000008, 0x00000009, 0x0000000a, 0x0000000b, 0x0000000c, 0x0000000d, 0x0000000e, 0x0000000f, 0x00000010, 0x00000015, 0x00000016, 0x00000033] D.nn = Int32[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 8, 8, 15, 12, 21, 22, 16, 9, 9, 6, 5, 15, 1, 1, 3, 10, 4, 21, 14, 14, 13, 5, 1, 14, 21, 21, 15, 16, 16, 1, 10, 11, 13, 3, 51, 22, 9, 8, 1, 3, 21, 11, 4, 13, 12, 1, 21, 13, 16, 9, 51, 16, 14, 22, 6, 9, 3, 16, 1, 9, 8, 7, 12, 13, 8, 2, 13, 16, 14, 3, 1, 6, 13, 12, 10, 1, 13, 13, 14, 7, 16, 51, 14, 1] D.dist = Float32[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.012102187, 0.0038340688, 0.029435158, 0.023014963, 0.0, 0.0, 0.03934163, 0.026487648, 0.013153732, 0.047049165, 0.037630916, 0.049073577, 0.023002267, 0.060494244, 0.021490276, 0.07288116, 0.049478352, 0.03490156, 0.017244399, 0.027738929, 0.059726, 0.020549059, 0.048783183, 0.018747509, 0.010358453, 0.017148256, 0.025457263, 0.06455159, 0.012111485, 0.028478503, 0.035551548, 0.057871163, 0.013613462, 0.009418607, 0.0, 0.09932631, 0.017505467, 0.034813523, 0.019562423, 0.011015594, 0.005203128, 0.05412346, 0.010145426, 0.07822806, 0.008384407, 0.022651374, 0.002434373, 0.005228281, 0.06195557, 0.022598624, 0.0449847, 0.039876938, 0.021089733, 0.035022497, 0.08016175, 0.014187396, 0.040968478, 0.018809497, 0.059638858, 0.006848216, 0.01429081, 0.036927044, 0.06513327, 0.039843798, 0.004347682, 0.0071326494, 0.00591743, 0.030626833, 0.027894795, 0.01010865, 0.015985787, 0.01662904, 0.043769598, 0.06934345, 0.07402396, 0.016327977, 0.022025049, 0.004429221, 0.008494556, 0.012436092, 0.082423806, 0.01472497, 0.03040409, 0.0038776994] Test Summary: | Pass Total Time neardup small block with filterblocks=false | 3 3 0.1s [ Info: neardup> starting: 1:16, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:25.901 LOG append_items! ExhaustiveSearch{SimilaritySearch.DistanceWithIdentifiers{CosineDistance, MatrixDatabase{Matrix{Float32}}}, VectorDatabase{Vector{UInt32}}} sp=0 ep=5 n=5 2026-02-17T17:06:26.291 [ Info: neardup> range: 17:32, current elements: 5, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:27.538 LOG append_items! ExhaustiveSearch{SimilaritySearch.DistanceWithIdentifiers{CosineDistance, MatrixDatabase{Matrix{Float32}}}, VectorDatabase{Vector{UInt32}}} sp=5 ep=8 n=8 2026-02-17T17:06:27.538 [ Info: neardup> range: 33:48, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:27.544 [ Info: neardup> range: 49:64, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:27.544 [ Info: neardup> range: 65:80, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:27.545 [ Info: neardup> range: 81:96, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:27.545 [ Info: neardup> range: 97:100, current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:28.761 [ Info: neardup> finished current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-17T17:06:28.762 D.map = UInt32[0x00000001, 0x00000002, 0x00000005, 0x0000000a, 0x00000010, 0x00000014, 0x00000015, 0x00000016, 0x00000031, 0x00000033, 0x00000058] D.nn = Int32[1, 2, 1, 2, 5, 1, 2, 2, 2, 10, 10, 1, 2, 10, 1, 16, 2, 1, 1, 20, 21, 22, 16, 1, 10, 22, 5, 1, 1, 1, 1, 10, 1, 21, 10, 16, 10, 5, 1, 10, 21, 21, 1, 16, 16, 1, 10, 10, 49, 1, 51, 22, 21, 16, 1, 20, 21, 10, 2, 10, 20, 1, 21, 2, 16, 49, 51, 16, 16, 22, 22, 49, 20, 16, 1, 49, 2, 2, 20, 49, 2, 2, 49, 16, 10, 1, 1, 88, 49, 20, 10, 1, 49, 49, 10, 5, 16, 51, 10, 1] D.dist = Float32[0.0, 0.0, 0.060869753, 0.03833443, 0.0, 0.07689232, 0.005671203, 0.043157518, 0.095935285, 0.0, 0.022707224, 0.08210516, 0.0972895, 0.039222717, 0.053628623, 0.0, 0.018312335, 0.070427954, 0.036316693, 0.0, 0.0, 0.0, 0.03934163, 0.05896926, 0.07982284, 0.02933675, 0.037630916, 0.083339155, 0.023002267, 0.060494244, 0.02401799, 0.07288116, 0.061572075, 0.03490156, 0.034860432, 0.03668481, 0.09456605, 0.020549059, 0.048783183, 0.03687018, 0.010358453, 0.017148256, 0.039230227, 0.06455159, 0.012111485, 0.028478503, 0.035551548, 0.08040768, 0.0, 0.023404062, 0.0, 0.09932631, 0.059657454, 0.06035489, 0.019562423, 0.04872781, 0.005203128, 0.06170845, 0.026166916, 0.08657956, 0.031094432, 0.022651374, 0.002434373, 0.07014978, 0.06195557, 0.07682556, 0.0449847, 0.039876938, 0.05202031, 0.035022497, 0.085592926, 0.06253415, 0.045373738, 0.018809497, 0.059638858, 0.05820346, 0.05151695, 0.043613374, 0.014776826, 0.06706005, 0.058496177, 0.0071326494, 0.025646985, 0.030626833, 0.04278195, 0.03547156, 0.015985787, 0.0, 0.068570495, 0.050896287, 0.07402396, 0.016327977, 0.02540189, 0.025722265, 0.023417473, 0.02724576, 0.082423806, 0.01472497, 0.037911654, 0.0038776994] Test Summary: | Pass Total Time neardup small block with filterblocks=false | 3 3 8.2s computing farthest point 1, dmax: Inf, imax: 16, n: 30 computing farthest point 2, dmax: 1.3883038, imax: 28, n: 30 computing farthest point 3, dmax: 1.0350205, imax: 13, n: 30 computing farthest point 4, dmax: 0.9596642, imax: 20, n: 30 computing farthest point 5, dmax: 0.9093515, imax: 27, n: 30 computing farthest point 6, dmax: 0.77414244, imax: 21, n: 30 computing farthest point 7, dmax: 0.69106466, imax: 26, n: 30 computing farthest point 8, dmax: 0.68048966, imax: 4, n: 30 computing farthest point 9, dmax: 0.6359847, imax: 22, n: 30 computing farthest point 10, dmax: 0.5816459, imax: 10, n: 30 Test Summary: | Pass Total Time farthest first traversal | 3 3 2.2s Test Summary: | Pass Total Time AdjacencyList | 15 15 1.8s LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:06:39.007 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] LOG add_vertex! sp=2 ep=2 n=2 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:06:41.038 LOG n.size quantiles:[1.0, 1.0, 1.0, 1.0, 1.0] LOG add_vertex! sp=295 ep=299 n=294 BeamSearch(bsize=2, Δ=0.95238096, maxvisits=106) 2026-02-17T17:06:55.588 LOG n.size quantiles:[4.0, 4.0, 5.0, 5.0, 5.0] (i, j, d) = (3, 49, -1.1920929f-7) (i, j, d, :parallel) = (3, 49, -1.1920929f-7, :parallel) [ Info: NOTE: the exact method will be faster on small datasets due to the preprocessing step of the approximation method [ Info: ("closestpair computation time", :approx => 25.275339305000003, :exact => 1.138257845) Test Summary: | Pass Total Time closestpair | 4 4 27.0s 8.267473 seconds (196.78 k allocations: 12.326 MiB, 0.43% gc time, 29.66% compilation time) SEARCH Exhaustive 1: 0.005593 seconds SEARCH Exhaustive 2: 0.005562 seconds SEARCH Exhaustive 3: 0.006361 seconds typeof(seq) = ExhaustiveSearch{SqL2Distance, MatrixDatabase{Matrix{Float32}}} typeof(ectx) = GenericContext{KnnSorted} typeof(q) = SubArray{Float32, 1, Matrix{Float32}, Tuple{Base.Slice{Base.OneTo{Int64}}, Int64}, true} typeof(res) = KnnSorted{Vector{IdWeight}} [ Info: ===================== minrecall ============================== LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:07:27.536 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] LOG add_vertex! sp=2 ep=2 n=2 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:07:29.774 LOG n.size quantiles:[1.0, 1.0, 1.0, 1.0, 1.0] LOG add_vertex! sp=295 ep=299 n=294 BeamSearch(bsize=11, Δ=1.2733874, maxvisits=194) 2026-02-17T17:07:42.901 LOG n.size quantiles:[3.0, 4.0, 4.0, 4.0, 7.0] LOG add_vertex! sp=13780 ep=13784 n=13779 BeamSearch(bsize=12, Δ=1.075, maxvisits=352) 2026-02-17T17:07:43.901 LOG n.size quantiles:[4.0, 7.0, 7.0, 8.0, 10.0] LOG add_vertex! sp=26180 ep=26184 n=26179 BeamSearch(bsize=6, Δ=1.1025, maxvisits=400) 2026-02-17T17:07:44.901 LOG n.size quantiles:[5.0, 6.0, 6.0, 6.0, 9.0] LOG add_vertex! sp=37440 ep=37444 n=37439 BeamSearch(bsize=6, Δ=1.1025, maxvisits=400) 2026-02-17T17:07:45.902 LOG n.size quantiles:[4.0, 6.0, 7.0, 9.0, 11.0] LOG add_vertex! sp=45830 ep=45834 n=45829 BeamSearch(bsize=14, Δ=1.155, maxvisits=490) 2026-02-17T17:07:46.902 LOG n.size quantiles:[4.0, 5.0, 8.0, 8.0, 9.0] LOG add_vertex! sp=54890 ep=54894 n=54889 BeamSearch(bsize=14, Δ=1.155, maxvisits=490) 2026-02-17T17:07:47.903 LOG n.size quantiles:[5.0, 6.0, 6.0, 6.0, 7.0] LOG add_vertex! sp=63135 ep=63139 n=63134 BeamSearch(bsize=6, Δ=1.025, maxvisits=442) 2026-02-17T17:07:48.903 LOG n.size quantiles:[5.0, 5.0, 7.0, 8.0, 8.0] LOG add_vertex! sp=72185 ep=72189 n=72184 BeamSearch(bsize=6, Δ=1.025, maxvisits=442) 2026-02-17T17:07:49.903 LOG n.size quantiles:[5.0, 5.0, 6.0, 6.0, 7.0] LOG add_vertex! sp=81200 ep=81204 n=81199 BeamSearch(bsize=6, Δ=1.025, maxvisits=442) 2026-02-17T17:07:50.904 LOG n.size quantiles:[4.0, 4.0, 7.0, 8.0, 8.0] LOG add_vertex! sp=87755 ep=87759 n=87754 BeamSearch(bsize=12, Δ=1.1, maxvisits=544) 2026-02-17T17:07:51.904 LOG n.size quantiles:[5.0, 6.0, 6.0, 6.0, 7.0] LOG add_vertex! sp=95540 ep=95544 n=95539 BeamSearch(bsize=12, Δ=1.1, maxvisits=544) 2026-02-17T17:07:52.905 LOG n.size quantiles:[5.0, 5.0, 7.0, 10.0, 11.0] quantile(neighbors_length.(Ref(graph.adj), 1:length(graph)), 0:0.1:1.0) = [1.0, 6.0, 8.0, 9.0, 10.0, 11.0, 12.0, 15.0, 18.0, 23.0, 93.0] [ Info: minrecall: queries per second: 3117.3094611769875, recall: 0.901 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=9, Δ=1.1, maxvisits=712)) quantile(neighbors_length.(Ref(graph.adj), 1:length(graph)), 0:0.1:1.0) = [1.0, 6.0, 8.0, 9.0, 10.0, 11.0, 12.0, 15.0, 18.0, 23.0, 93.0] [ Info: ===================== rebuild ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch(bsize=8, Δ=1.155, maxvisits=560)), 1000, 8) [ Info: rebuild: queries per second: 12319.101842864953, recall: 0.906625 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=8, Δ=1.155, maxvisits=560)) quantile(neighbors_length.(Ref(graph.adj), 1:length(graph)), 0:0.1:1.0) = [2.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0, 19.0, 33.0] [ Info: ===================== matrixhints ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch(bsize=10, Δ=1.12, maxvisits=776)), 1000, 8) 0.759197 seconds (92.96 k allocations: 5.465 MiB, 87.19% compilation time) [ Info: matrixhints: queries per second: 9980.899652144686, recall: 0.904375 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=10, Δ=1.12, maxvisits=776)) quantile(neighbors_length.(Ref(graph.adj), 1:length(graph)), 0:0.1:1.0) = [1.0, 6.0, 8.0, 9.0, 10.0, 11.0, 12.0, 15.0, 18.0, 23.0, 93.0] 3.404723 seconds (158.42 k allocations: 10.369 MiB, 58.27% compilation time) SEARCH Exhaustive 1: 0.001992 seconds SEARCH Exhaustive 2: 0.002528 seconds SEARCH Exhaustive 3: 0.002829 seconds typeof(seq) = ExhaustiveSearch{SqL2Distance, StrideMatrixDatabase{StrideArraysCore.StrideArray{Float32, 2, (1, 2), Tuple{Int64, Int64}, Tuple{Nothing, Nothing}, Tuple{Static.StaticInt{1}, Static.StaticInt{1}}, Matrix{Float32}}}} typeof(ectx) = GenericContext{KnnSorted} typeof(q) = StrideArraysCore.StrideArray{Float32, 1, (1,), Tuple{Int64}, Tuple{Nothing}, Tuple{Static.StaticInt{1}}, Matrix{Float32}} typeof(res) = KnnSorted{Vector{IdWeight}} [ Info: ===================== minrecall ============================== LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:09:14.205 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] LOG add_vertex! sp=2 ep=2 n=2 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-17T17:09:16.095 LOG n.size quantiles:[1.0, 1.0, 1.0, 1.0, 1.0] LOG add_vertex! sp=295 ep=299 n=294 BeamSearch(bsize=11, Δ=1.2733874, maxvisits=194) 2026-02-17T17:09:28.458 LOG n.size quantiles:[3.0, 4.0, 4.0, 4.0, 7.0] LOG add_vertex! sp=13545 ep=13549 n=13544 BeamSearch(bsize=12, Δ=1.075, maxvisits=352) 2026-02-17T17:09:29.458 LOG n.size quantiles:[4.0, 6.0, 6.0, 7.0, 8.0] LOG add_vertex! sp=25255 ep=25259 n=25254 BeamSearch(bsize=6, Δ=1.1025, maxvisits=400) 2026-02-17T17:09:30.475 LOG n.size quantiles:[3.0, 5.0, 7.0, 7.0, 7.0] LOG add_vertex! sp=35190 ep=35194 n=35189 BeamSearch(bsize=6, Δ=1.1025, maxvisits=400) 2026-02-17T17:09:31.475 LOG n.size quantiles:[5.0, 6.0, 7.0, 7.0, 9.0] LOG add_vertex! sp=43695 ep=43699 n=43694 BeamSearch(bsize=14, Δ=1.155, maxvisits=490) 2026-02-17T17:09:32.476 LOG n.size quantiles:[4.0, 5.0, 6.0, 7.0, 9.0] LOG add_vertex! sp=53280 ep=53284 n=53279 BeamSearch(bsize=14, Δ=1.155, maxvisits=490) 2026-02-17T17:09:33.476 LOG n.size quantiles:[4.0, 6.0, 6.0, 6.0, 8.0] LOG add_vertex! sp=61275 ep=61279 n=61274 BeamSearch(bsize=6, Δ=1.025, maxvisits=442) 2026-02-17T17:09:34.476 LOG n.size quantiles:[5.0, 6.0, 6.0, 7.0, 9.0] LOG add_vertex! sp=69685 ep=69689 n=69684 BeamSearch(bsize=6, Δ=1.025, maxvisits=442) 2026-02-17T17:09:35.477 LOG n.size quantiles:[5.0, 6.0, 7.0, 7.0, 12.0] LOG add_vertex! sp=77775 ep=77779 n=77774 BeamSearch(bsize=6, Δ=1.025, maxvisits=442) 2026-02-17T17:09:36.477 LOG n.size quantiles:[5.0, 6.0, 6.0, 7.0, 7.0] LOG add_vertex! sp=85225 ep=85229 n=85224 BeamSearch(bsize=12, Δ=1.1, maxvisits=544) 2026-02-17T17:09:37.573 LOG n.size quantiles:[6.0, 6.0, 7.0, 8.0, 8.0] LOG add_vertex! sp=92855 ep=92859 n=92854 BeamSearch(bsize=12, Δ=1.1, maxvisits=544) 2026-02-17T17:09:38.574 LOG n.size quantiles:[3.0, 7.0, 7.0, 8.0, 8.0] LOG add_vertex! sp=99585 ep=99589 n=99584 BeamSearch(bsize=12, Δ=1.1, maxvisits=544) 2026-02-17T17:09:39.574 LOG n.size quantiles:[4.0, 6.0, 7.0, 8.0, 9.0] quantile(neighbors_length.(Ref(graph.adj), 1:length(graph)), 0:0.1:1.0) = [1.0, 6.0, 8.0, 9.0, 10.0, 11.0, 12.0, 15.0, 18.0, 23.0, 93.0] [ Info: minrecall: queries per second: 2948.6413898904766, recall: 0.901 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=9, Δ=1.1, maxvisits=712)) quantile(neighbors_length.(Ref(graph.adj), 1:length(graph)), 0:0.1:1.0) = [1.0, 6.0, 8.0, 9.0, 10.0, 11.0, 12.0, 15.0, 18.0, 23.0, 93.0] [ Info: ===================== rebuild ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch(bsize=8, Δ=1.155, maxvisits=560)), 1000, 8) [ Info: rebuild: queries per second: 12292.323197087722, recall: 0.906625 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=8, Δ=1.155, maxvisits=560)) quantile(neighbors_length.(Ref(graph.adj), 1:length(graph)), 0:0.1:1.0) = [2.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 18.0, 19.0, 33.0] [ Info: ===================== matrixhints ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch(bsize=10, Δ=1.12, maxvisits=776)), 1000, 8) 0.698516 seconds (94.04 k allocations: 5.616 MiB, 86.01% compilation time) [ Info: matrixhints: queries per second: 13960.340626727155, recall: 0.904375 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=10, Δ=1.12, maxvisits=776)) quantile(neighbors_length.(Ref(graph.adj), 1:length(graph)), 0:0.1:1.0) = [1.0, 6.0, 8.0, 9.0, 10.0, 11.0, 12.0, 15.0, 18.0, 23.0, 93.0] Test Summary: | Pass Total Time vector indexing with SearchGraph | 18 18 3m26.7s Testing SimilaritySearch tests passed Testing completed after 745.89s PkgEval succeeded after 817.49s