Package evaluation to test SimilaritySearch on Julia 1.14.0-DEV.1640 (5532bea546*) started at 2026-01-30T09:18:59.824 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Activating project at `~/.julia/environments/v1.14` Set-up completed after 10.51s ################################################################################ # Installation # Installing SimilaritySearch... Resolving package versions... Installed SimilaritySearch ─ v0.13.8 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.8.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 4.71s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... Precompiling package dependencies... Precompiling packages... 3081.3 ms ✓ SearchModels 6917.3 ms ✓ SimilaritySearch 2 dependencies successfully precompiled in 11 seconds. 81 already precompiled. Precompilation completed after 29.16s ################################################################################ # Testing # Testing SimilaritySearch Status `/tmp/jl_RtoQlR/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_RtoQlR/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.8.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.4+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 16.1s Test Summary: | Pass Total Time heap | 16 16 0.1s Test Summary: | Pass Total Time KnnHeap | 30005 30005 3.7s Test Summary: | Pass Total Time XKnn | 25005 25005 2.8s Test Summary: | Pass Total Time XKnn pop ops | 9603 9603 1.1s [ Info: (MatrixDatabase{Matrix{Float32}}, SubDatabase{MatrixDatabase{Matrix{Float32}}, Vector{Int64}}) 5.334523 seconds (399.06 k allocations: 24.589 MiB, 0.62% gc time, 34.24% compilation time) 3.966108 seconds (7 allocations: 512 bytes) 5.400216 seconds (254.62 k allocations: 16.009 MiB, 28.88% compilation time) 3.846137 seconds (7 allocations: 512 bytes) 5.031657 seconds (238.56 k allocations: 15.118 MiB, 30.20% compilation time) 3.513348 seconds (7 allocations: 512 bytes) 5.277079 seconds (234.13 k allocations: 14.863 MiB, 31.29% compilation time) 3.553499 seconds (7 allocations: 512 bytes) 15.554546 seconds (246.34 k allocations: 15.516 MiB, 8.95% compilation time) 14.014981 seconds (7 allocations: 512 bytes) 26.836323 seconds (7 allocations: 512 bytes) 26.348910 seconds (7 allocations: 512 bytes) 19.502827 seconds (509.64 k allocations: 31.382 MiB, 7.98% compilation time) 17.925910 seconds (7 allocations: 512 bytes) 17.132445 seconds (405.35 k allocations: 25.380 MiB, 0.37% gc time, 7.18% compilation time) 15.862369 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time indexing vectors with ExhaustiveSearch | 8000 8000 3m14.1s [ Info: (VectorDatabase{Vector{Vector{Int64}}}, SubDatabase{VectorDatabase{Vector{Vector{Int64}}}, Vector{Int64}}) 3.874012 seconds (168.62 k allocations: 11.249 MiB, 37.65% compilation time) 2.402467 seconds (7 allocations: 512 bytes) 30.068460 seconds (209.48 k allocations: 13.561 MiB, 5.38% compilation time) 27.942057 seconds (7 allocations: 528 bytes) 27.838910 seconds (7 allocations: 528 bytes) 27.914260 seconds (7 allocations: 528 bytes) 4.995647 seconds (152.56 k allocations: 9.903 MiB, 32.08% compilation time) 3.355267 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time indexing sequences with ExhaustiveSearch | 4000 4000 2m10.4s [ Info: (VectorDatabase{Vector{Vector{Int64}}}, SubDatabase{VectorDatabase{Vector{Vector{Int64}}}, Vector{Int64}}) 11.104032 seconds (165.36 k allocations: 10.757 MiB, 2.65% gc time, 15.39% compilation time) 9.372816 seconds (7 allocations: 512 bytes) 11.150907 seconds (154.30 k allocations: 10.055 MiB, 13.01% compilation time) 9.732033 seconds (7 allocations: 512 bytes) 10.916375 seconds (154.21 k allocations: 10.051 MiB, 13.32% compilation time) 9.381886 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time indexing sets with ExhaustiveSearch | 3000 3000 1m03.5s 1.139423 seconds (226.83 k allocations: 14.204 MiB, 96.64% compilation time) 0.037837 seconds (7 allocations: 512 bytes) 1.789562 seconds (234.93 k allocations: 15.015 MiB, 2.03% gc time, 97.99% compilation time) 0.036368 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time Normalized Cosine and Normalized Angle distances | 2000 2000 4.8s 1.861275 seconds (288.30 k allocations: 17.696 MiB, 97.22% compilation time) 0.053432 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time Binary hamming distance | 1000 1000 2.5s allknn 2%|▉ | ETA: 0:03:25 allknn 100%|█████████████████████████████████████████████| Time: 0:00:04 ExhaustiveSearch allknn: 4.820109 seconds (1.80 M allocations: 109.970 MiB, 1.27% gc time, 99.95% compilation time) Test Summary: | Pass Total Time allknn | 1 1 5.0s 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, 6.0] Test Summary: | Total Time HSP | 0 4.7s [ Info: neardup> starting: 1:100, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:23.585 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-30T09:27:24.321 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-01-30T09:27:27.593 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-01-30T09:27:29.461 LOG n.size quantiles:[1.0, 1.0, 2.0, 2.0, 2.0] [ Info: neardup> finished current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:29.919 D.map = UInt32[0x00000001, 0x00000002, 0x00000008, 0x00000011, 0x00000014, 0x00000020, 0x00000025, 0x00000027, 0x00000029, 0x00000031] D.nn = Int32[1, 2, 1, 1, 1, 1, 2, 8, 2, 8, 8, 2, 2, 8, 2, 8, 17, 1, 8, 20, 1, 1, 2, 20, 1, 2, 2, 1, 2, 8, 2, 32, 17, 2, 2, 1, 37, 8, 39, 2, 41, 2, 1, 8, 20, 32, 37, 37, 49, 1, 39, 41, 2, 1, 17, 1, 41, 37, 1, 2, 39, 1, 1, 1, 20, 1, 49, 8, 37, 2, 2, 41, 2, 41, 49, 8, 32, 8, 49, 17, 39, 39, 1, 2, 49, 37, 1, 39, 32, 8, 1, 1, 39, 17, 1, 49, 20, 2, 39, 49] D.dist = Float32[0.0, 0.0, 0.06373161, 0.072172105, 0.02691698, 0.05594647, 0.052167118, 0.0, 0.078427374, 0.07329589, 0.0369519, 0.088178694, 0.030672789, 0.030887663, 0.07697606, 0.05654049, 0.0, 0.08054644, 0.028357148, 0.0, 0.05465746, 0.0550763, 0.05672753, 0.052721024, 0.024357677, 0.03798753, 0.037163377, 0.03430599, 0.052796483, 0.054312885, 0.026498973, 0.0, 0.046552658, 0.027926087, 0.03011024, 0.018120885, 0.0, 0.035268426, 0.0, 0.08092904, 0.0, 0.04981166, 0.026471078, 0.042445302, 0.03263694, 0.050512254, 0.033135116, 0.06528586, 0.0, 0.026048362, 0.042930603, 0.019746423, 0.01790595, 0.047660172, 0.014283538, 0.014527142, 0.04470998, 0.0113072395, 0.004347563, 0.047562063, 0.048484564, 0.013428748, 0.035766542, 0.013060927, 0.05638045, 0.049809515, 0.057482123, 0.019881606, 0.0320915, 0.044894814, 0.041864872, 0.017890632, 0.075145006, 0.023125052, 0.061981678, 0.035239756, 0.039172113, 0.043413162, 0.012503922, 0.04657793, 0.027330458, 0.058505654, 0.012370825, 0.023931444, 0.03998959, 0.017196894, 0.02526766, 0.042022586, 0.017162561, 0.0124082565, 0.02981031, 0.010271609, 0.05953318, 0.058757067, 0.06053561, 0.02303809, 0.04007435, 0.047012687, 0.017442644, 0.027182996] Test Summary: | Pass Total Time neardup single block | 3 3 20.9s [ Info: neardup> starting: 1:16, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:31.034 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-30T09:27:31.034 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] [ Info: neardup> range: 17:32, current elements: 3, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.043 LOG add_vertex! sp=4 ep=4 n=4 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-30T09:27:34.043 LOG n.size quantiles:[1.0, 1.0, 1.0, 1.0, 1.0] [ Info: neardup> range: 33:48, current elements: 6, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.043 [ Info: neardup> range: 49:64, current elements: 9, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.044 [ Info: neardup> range: 65:80, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.044 [ Info: neardup> range: 81:96, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.044 [ Info: neardup> range: 97:100, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.321 [ Info: neardup> finished current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.321 D.map = UInt32[0x00000001, 0x00000002, 0x00000008, 0x00000011, 0x00000014, 0x00000020, 0x00000025, 0x00000027, 0x00000029, 0x00000031] D.nn = Int32[1, 2, 1, 1, 1, 1, 2, 8, 2, 8, 8, 2, 2, 8, 2, 8, 17, 1, 8, 20, 1, 1, 2, 1, 1, 2, 2, 1, 2, 8, 2, 32, 17, 2, 2, 1, 37, 8, 39, 2, 41, 2, 1, 8, 20, 32, 37, 37, 49, 1, 39, 41, 2, 1, 17, 1, 41, 37, 1, 2, 39, 1, 1, 1, 20, 1, 49, 8, 37, 2, 2, 41, 2, 41, 49, 8, 32, 8, 49, 17, 39, 39, 1, 2, 49, 37, 1, 39, 32, 8, 1, 1, 39, 17, 1, 49, 20, 2, 39, 49] D.dist = Float32[0.0, 0.0, 0.06373161, 0.072172105, 0.02691698, 0.05594647, 0.052167118, 0.0, 0.078427374, 0.07329589, 0.0369519, 0.088178694, 0.030672789, 0.030887663, 0.07697606, 0.05654049, 0.0, 0.08054644, 0.028357148, 0.0, 0.05465746, 0.0550763, 0.05672753, 0.07215524, 0.024357677, 0.03798753, 0.037163377, 0.03430599, 0.052796483, 0.054312885, 0.026498973, 0.0, 0.046552658, 0.027926087, 0.03011024, 0.018120885, 0.0, 0.035268426, 0.0, 0.08092904, 0.0, 0.04981166, 0.026471078, 0.042445302, 0.03263694, 0.050512254, 0.033135116, 0.06528586, 0.0, 0.026048362, 0.042930603, 0.019746423, 0.01790595, 0.047660172, 0.014283538, 0.014527142, 0.04470998, 0.0113072395, 0.004347563, 0.047562063, 0.048484564, 0.013428748, 0.035766542, 0.013060927, 0.05638045, 0.049809515, 0.057482123, 0.019881606, 0.0320915, 0.044894814, 0.041864872, 0.017890632, 0.075145006, 0.023125052, 0.061981678, 0.035239756, 0.039172113, 0.043413162, 0.012503922, 0.04657793, 0.027330458, 0.058505654, 0.012370825, 0.023931444, 0.03998959, 0.017196894, 0.02526766, 0.042022586, 0.017162561, 0.0124082565, 0.02981031, 0.010271609, 0.05953318, 0.058757067, 0.06053561, 0.02303809, 0.04007435, 0.047012687, 0.017442644, 0.027182996] Test Summary: | Pass Total Time neardup small block | 3 3 3.3s [ Info: neardup> starting: 1:16, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.406 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-30T09:27:34.406 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-01-30T09:27:34.408 [ Info: neardup> range: 33:48, current elements: 17, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.408 [ Info: neardup> range: 49:64, current elements: 17, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.408 [ Info: neardup> range: 65:80, current elements: 17, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.408 [ Info: neardup> range: 81:96, current elements: 17, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.408 [ Info: neardup> range: 97:100, current elements: 17, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.408 [ Info: neardup> finished current elements: 17, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:34.408 D.map = UInt32[0x00000001, 0x00000002, 0x00000003, 0x00000004, 0x00000005, 0x00000006, 0x00000007, 0x00000008, 0x00000009, 0x0000000a, 0x0000000b, 0x0000000c, 0x0000000d, 0x0000000e, 0x0000000f, 0x00000010, 0x00000014] D.nn = Int32[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 16, 3, 16, 20, 11, 1, 9, 1, 1, 2, 15, 1, 13, 10, 2, 10, 16, 2, 6, 1, 7, 14, 12, 15, 4, 6, 5, 10, 20, 11, 7, 9, 7, 6, 6, 4, 13, 6, 15, 1, 3, 20, 1, 7, 13, 11, 4, 1, 20, 5, 9, 8, 7, 13, 13, 4, 15, 4, 9, 11, 10, 11, 9, 15, 6, 13, 1, 13, 9, 7, 1, 6, 10, 14, 6, 1, 6, 15, 6, 9, 20, 7, 6, 7] 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.05118996, 0.0075771213, 0.0113758445, 0.0, 0.026984334, 0.0550763, 0.008206844, 0.07215524, 0.024357677, 0.03798753, 0.031142533, 0.03430599, 0.039592803, 0.030328572, 0.026498973, 0.012360871, 0.034704685, 0.027926087, 0.011223435, 0.018120885, 0.094527185, 0.0043975115, 0.025640965, 0.01786226, 0.011855125, 0.012429118, 0.007347524, 0.039429367, 0.03263694, 0.03126073, 0.026435256, 0.02522558, 0.021092355, 0.0061062574, 0.008270979, 0.001785636, 0.0036414862, 0.005630553, 0.033662915, 0.014527142, 0.0069468617, 0.092318654, 0.004347563, 0.030667067, 0.07674742, 0.012357831, 0.01760608, 0.013060927, 0.05638045, 0.0432238, 0.0120129585, 0.019881606, 0.019043446, 0.0035043955, 0.033563733, 0.022925258, 0.0028578043, 0.011420727, 0.014297545, 0.0074030757, 0.05073601, 0.034513235, 0.015653193, 0.0107495785, 0.03514439, 0.036817014, 0.012370825, 0.007506907, 0.0057780147, 0.071094155, 0.02526766, 0.012949288, 0.03621161, 0.0054555535, 0.029006302, 0.010271609, 0.06085676, 0.006551087, 0.00065743923, 0.031740427, 0.04007435, 0.029335558, 0.03772682, 0.016444504] 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-01-30T09:27:39.053 LOG append_items! ExhaustiveSearch{SimilaritySearch.DistanceWithIdentifiers{CosineDistance, MatrixDatabase{Matrix{Float32}}}, VectorDatabase{Vector{UInt32}}} sp=0 ep=3 n=3 2026-01-30T09:27:39.397 [ Info: neardup> range: 17:32, current elements: 3, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:40.517 LOG append_items! ExhaustiveSearch{SimilaritySearch.DistanceWithIdentifiers{CosineDistance, MatrixDatabase{Matrix{Float32}}}, VectorDatabase{Vector{UInt32}}} sp=3 ep=6 n=6 2026-01-30T09:27:40.517 [ Info: neardup> range: 33:48, current elements: 6, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:40.522 [ Info: neardup> range: 49:64, current elements: 9, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:40.523 [ Info: neardup> range: 65:80, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:40.523 [ Info: neardup> range: 81:96, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:40.523 [ Info: neardup> range: 97:100, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:41.669 [ Info: neardup> finished current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-01-30T09:27:41.670 D.map = UInt32[0x00000001, 0x00000002, 0x00000008, 0x00000011, 0x00000014, 0x00000020, 0x00000025, 0x00000027, 0x00000029, 0x00000031] D.nn = Int32[1, 2, 1, 1, 1, 1, 2, 8, 2, 8, 8, 2, 2, 8, 2, 8, 17, 1, 8, 20, 1, 1, 2, 1, 1, 2, 2, 1, 2, 8, 2, 32, 17, 2, 2, 1, 37, 8, 39, 2, 41, 2, 1, 8, 20, 32, 37, 37, 49, 1, 39, 41, 2, 1, 17, 1, 41, 37, 1, 2, 39, 1, 1, 1, 20, 1, 49, 8, 37, 2, 2, 41, 2, 41, 49, 8, 32, 8, 49, 17, 39, 39, 1, 2, 49, 37, 1, 39, 32, 8, 1, 1, 39, 17, 1, 49, 20, 2, 39, 49] D.dist = Float32[0.0, 0.0, 0.06373161, 0.072172105, 0.02691698, 0.05594647, 0.052167118, 0.0, 0.078427374, 0.07329589, 0.0369519, 0.088178694, 0.030672789, 0.030887663, 0.07697606, 0.05654049, 0.0, 0.08054644, 0.028357148, 0.0, 0.05465746, 0.0550763, 0.05672753, 0.07215524, 0.024357677, 0.03798753, 0.037163377, 0.03430599, 0.052796483, 0.054312885, 0.026498973, 0.0, 0.046552658, 0.027926087, 0.03011024, 0.018120885, 0.0, 0.035268426, 0.0, 0.08092904, 0.0, 0.04981166, 0.026471078, 0.042445302, 0.03263694, 0.050512254, 0.033135116, 0.06528586, 0.0, 0.026048362, 0.042930603, 0.019746423, 0.01790595, 0.047660172, 0.014283538, 0.014527142, 0.04470998, 0.0113072395, 0.004347563, 0.047562063, 0.048484564, 0.013428748, 0.035766542, 0.013060927, 0.05638045, 0.049809515, 0.057482123, 0.019881606, 0.0320915, 0.044894814, 0.041864872, 0.017890632, 0.075145006, 0.023125052, 0.061981678, 0.035239756, 0.039172113, 0.043413162, 0.012503922, 0.04657793, 0.027330458, 0.058505654, 0.012370825, 0.023931444, 0.03998959, 0.017196894, 0.02526766, 0.042022586, 0.017162561, 0.0124082565, 0.02981031, 0.010271609, 0.05953318, 0.058757067, 0.06053561, 0.02303809, 0.04007435, 0.047012687, 0.017442644, 0.027182996] Test Summary: | Pass Total Time neardup small block with filterblocks=false | 3 3 7.3s computing farthest point 1, dmax: Inf, imax: 18, n: 30 computing farthest point 2, dmax: 1.211054, imax: 17, n: 30 computing farthest point 3, dmax: 1.1766456, imax: 30, n: 30 computing farthest point 4, dmax: 0.86445963, imax: 20, n: 30 computing farthest point 5, dmax: 0.8273822, imax: 21, n: 30 computing farthest point 6, dmax: 0.8124197, imax: 12, n: 30 computing farthest point 7, dmax: 0.71381664, imax: 26, n: 30 computing farthest point 8, dmax: 0.59686685, imax: 9, n: 30 computing farthest point 9, dmax: 0.5795539, imax: 4, n: 30 computing farthest point 10, dmax: 0.5450196, imax: 29, n: 30 Test Summary: | Pass Total Time farthest first traversal | 3 3 1.9s Test Summary: | Pass Total Time AdjacencyList | 15 15 1.6s LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-30T09:27:49.958 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-01-30T09:27:51.551 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.861678, maxvisits=118) 2026-01-30T09:28:05.290 LOG n.size quantiles:[3.0, 4.0, 4.0, 4.0, 6.0] (i, j, d) = (367, 448, -2.3841858f-7) (i, j, d, :parallel) = (367, 448, -2.3841858f-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 => 22.340396954, :exact => 0.91841578) Test Summary: | Pass Total Time closestpair | 4 4 23.7s 7.174084 seconds (196.06 k allocations: 12.280 MiB, 23.26% compilation time) SEARCH Exhaustive 1: 0.004144 seconds SEARCH Exhaustive 2: 0.005285 seconds SEARCH Exhaustive 3: 0.005314 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-01-30T09:28:31.974 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-01-30T09:28:33.647 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=10, Δ=1.1, maxvisits=182) 2026-01-30T09:28:43.403 LOG n.size quantiles:[4.0, 5.0, 6.0, 7.0, 8.0] LOG add_vertex! sp=16565 ep=16569 n=16564 BeamSearch(bsize=8, Δ=1.155, maxvisits=370) 2026-01-30T09:28:44.403 LOG n.size quantiles:[6.0, 7.0, 7.0, 8.0, 8.0] LOG add_vertex! sp=25255 ep=25259 n=25254 BeamSearch(bsize=6, Δ=1.0, maxvisits=436) 2026-01-30T09:28:45.434 LOG n.size quantiles:[4.0, 5.0, 6.0, 7.0, 8.0] LOG add_vertex! sp=37880 ep=37884 n=37879 BeamSearch(bsize=12, Δ=1.075, maxvisits=502) 2026-01-30T09:28:46.487 LOG n.size quantiles:[5.0, 6.0, 8.0, 9.0, 10.0] LOG add_vertex! sp=49420 ep=49424 n=49419 BeamSearch(bsize=12, Δ=1.075, maxvisits=502) 2026-01-30T09:28:47.488 LOG n.size quantiles:[4.0, 4.0, 7.0, 9.0, 9.0] LOG add_vertex! sp=58740 ep=58744 n=58739 BeamSearch(bsize=4, Δ=1.075, maxvisits=464) 2026-01-30T09:28:48.488 LOG n.size quantiles:[3.0, 5.0, 5.0, 8.0, 9.0] LOG add_vertex! sp=68655 ep=68659 n=68654 BeamSearch(bsize=4, Δ=1.075, maxvisits=464) 2026-01-30T09:28:49.488 LOG n.size quantiles:[4.0, 6.0, 6.0, 7.0, 8.0] LOG add_vertex! sp=77750 ep=77754 n=77749 BeamSearch(bsize=4, Δ=1.075, maxvisits=464) 2026-01-30T09:28:50.489 LOG n.size quantiles:[7.0, 8.0, 8.0, 9.0, 11.0] LOG add_vertex! sp=85225 ep=85229 n=85224 BeamSearch(bsize=10, Δ=1.2733874, maxvisits=700) 2026-01-30T09:28:51.506 LOG n.size quantiles:[7.0, 7.0, 7.0, 8.0, 8.0] LOG add_vertex! sp=93245 ep=93249 n=93244 BeamSearch(bsize=10, Δ=1.2733874, maxvisits=700) 2026-01-30T09:28:52.506 LOG n.size quantiles:[6.0, 7.0, 8.0, 9.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, 14.0, 17.0, 23.0, 108.0] [ Info: minrecall: queries per second: 3339.248768002533, recall: 0.900375 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=13, Δ=1.14, maxvisits=752)) 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, 14.0, 17.0, 23.0, 108.0] [ Info: ===================== rebuild ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch(bsize=7, Δ=1.14, maxvisits=596)), 1000, 8) [ Info: rebuild: queries per second: 15159.499384213557, recall: 0.900875 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=7, Δ=1.14, maxvisits=596)) 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, 30.0] [ Info: ===================== matrixhints ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch(bsize=15, Δ=1.155, maxvisits=752)), 1000, 8) 0.612993 seconds (91.79 k allocations: 5.371 MiB, 86.75% compilation time) [ Info: matrixhints: queries per second: 12345.112204045841, recall: 0.90175 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=15, Δ=1.155, maxvisits=752)) 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, 14.0, 17.0, 23.0, 108.0] 2.990675 seconds (158.07 k allocations: 10.347 MiB, 55.06% compilation time) SEARCH Exhaustive 1: 0.001308 seconds SEARCH Exhaustive 2: 0.001276 seconds SEARCH Exhaustive 3: 0.001505 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-01-30T09:30:07.016 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-01-30T09:30:08.721 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=10, Δ=1.1, maxvisits=182) 2026-01-30T09:30:18.393 LOG n.size quantiles:[4.0, 5.0, 6.0, 7.0, 8.0] LOG add_vertex! sp=18625 ep=18629 n=18624 BeamSearch(bsize=8, Δ=1.155, maxvisits=370) 2026-01-30T09:30:19.394 LOG n.size quantiles:[5.0, 5.0, 6.0, 8.0, 8.0] LOG add_vertex! sp=32825 ep=32829 n=32824 BeamSearch(bsize=6, Δ=1.0, maxvisits=436) 2026-01-30T09:30:20.394 LOG n.size quantiles:[4.0, 5.0, 7.0, 7.0, 8.0] LOG add_vertex! sp=44955 ep=44959 n=44954 BeamSearch(bsize=12, Δ=1.075, maxvisits=502) 2026-01-30T09:30:21.394 LOG n.size quantiles:[4.0, 4.0, 5.0, 6.0, 8.0] LOG add_vertex! sp=56750 ep=56754 n=56749 BeamSearch(bsize=12, Δ=1.075, maxvisits=502) 2026-01-30T09:30:22.394 LOG n.size quantiles:[7.0, 7.0, 8.0, 8.0, 8.0] LOG add_vertex! sp=66365 ep=66369 n=66364 BeamSearch(bsize=4, Δ=1.075, maxvisits=464) 2026-01-30T09:30:23.394 LOG n.size quantiles:[6.0, 7.0, 7.0, 9.0, 9.0] LOG add_vertex! sp=76545 ep=76549 n=76544 BeamSearch(bsize=4, Δ=1.075, maxvisits=464) 2026-01-30T09:30:24.394 LOG n.size quantiles:[3.0, 5.0, 7.0, 7.0, 8.0] LOG add_vertex! sp=85400 ep=85404 n=85399 BeamSearch(bsize=10, Δ=1.2733874, maxvisits=700) 2026-01-30T09:30:25.395 LOG n.size quantiles:[5.0, 7.0, 8.0, 8.0, 11.0] LOG add_vertex! sp=93700 ep=93704 n=93699 BeamSearch(bsize=10, Δ=1.2733874, maxvisits=700) 2026-01-30T09:30:26.395 LOG n.size quantiles:[6.0, 7.0, 8.0, 8.0, 10.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, 14.0, 17.0, 23.0, 108.0] [ Info: minrecall: queries per second: 3030.3543626693554, recall: 0.900375 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=13, Δ=1.14, maxvisits=752)) 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, 14.0, 17.0, 23.0, 108.0] [ Info: ===================== rebuild ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch(bsize=7, Δ=1.14, maxvisits=596)), 1000, 8) [ Info: rebuild: queries per second: 16383.056033999952, recall: 0.900875 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=7, Δ=1.14, maxvisits=596)) 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, 30.0] [ Info: ===================== matrixhints ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch(bsize=15, Δ=1.155, maxvisits=752)), 1000, 8) 0.635412 seconds (92.87 k allocations: 5.521 MiB, 88.80% compilation time) [ Info: matrixhints: queries per second: 13985.891536110468, recall: 0.90175 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=15, Δ=1.155, maxvisits=752)) 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, 14.0, 17.0, 23.0, 108.0] Test Summary: | Pass Total Time vector indexing with SearchGraph | 18 18 2m59.4s Testing SimilaritySearch tests passed Testing completed after 681.13s PkgEval succeeded after 736.46s