Package evaluation to test SimilaritySearch on Julia 1.14.0-DEV.1699 (9484a92029*) started at 2026-02-10T18:54:18.232 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Activating project at `~/.julia/environments/v1.14` Set-up completed after 9.36s ################################################################################ # 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 4.52s ################################################################################ # Precompilation # Precompiling PkgEval dependencies... Precompiling package dependencies... Precompiling packages... 3048.5 ms ✓ SearchModels 7332.0 ms ✓ SimilaritySearch 2 dependencies successfully precompiled in 11 seconds. 81 already precompiled. Precompilation completed after 30.14s ################################################################################ # Testing # Testing SimilaritySearch Status `/tmp/jl_X8UO7M/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_X8UO7M/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 16.0s Test Summary: | Pass Total Time heap | 16 16 0.1s Test Summary: | Pass Total Time KnnHeap | 30005 30005 3.9s Test Summary: | Pass Total Time XKnn | 25005 25005 3.0s Test Summary: | Pass Total Time XKnn pop ops | 9603 9603 1.2s [ Info: (MatrixDatabase{Matrix{Float32}}, SubDatabase{MatrixDatabase{Matrix{Float32}}, Vector{Int64}}) 5.445927 seconds (400.95 k allocations: 24.719 MiB, 33.89% compilation time) 3.589591 seconds (7 allocations: 512 bytes) 5.416533 seconds (255.86 k allocations: 16.081 MiB, 32.52% compilation time) 3.815090 seconds (7 allocations: 512 bytes) 5.261208 seconds (239.62 k allocations: 15.182 MiB, 35.03% compilation time) 3.323962 seconds (7 allocations: 512 bytes) 5.243254 seconds (235.05 k allocations: 14.921 MiB, 35.58% compilation time) 3.554170 seconds (7 allocations: 512 bytes) 15.970762 seconds (247.53 k allocations: 15.585 MiB, 0.52% gc time, 10.51% compilation time) 14.730063 seconds (7 allocations: 512 bytes) 27.566906 seconds (7 allocations: 512 bytes) 27.361503 seconds (7 allocations: 512 bytes) 19.640126 seconds (511.57 k allocations: 31.513 MiB, 8.18% compilation time) 17.762417 seconds (7 allocations: 512 bytes) 17.512207 seconds (406.76 k allocations: 25.480 MiB, 0.42% gc time, 6.97% compilation time) 16.542922 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time indexing vectors with ExhaustiveSearch | 8000 8000 3m18.1s [ Info: (VectorDatabase{Vector{Vector{Int64}}}, SubDatabase{VectorDatabase{Vector{Vector{Int64}}}, Vector{Int64}}) 3.955324 seconds (169.00 k allocations: 11.272 MiB, 34.81% compilation time) 2.539974 seconds (7 allocations: 512 bytes) 29.889437 seconds (210.19 k allocations: 13.608 MiB, 0.23% gc time, 5.48% compilation time) 28.752894 seconds (7 allocations: 528 bytes) 29.228443 seconds (7 allocations: 528 bytes) 28.403108 seconds (7 allocations: 528 bytes) 5.014400 seconds (152.91 k allocations: 9.926 MiB, 31.81% compilation time) 3.341382 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time indexing sequences with ExhaustiveSearch | 4000 4000 2m13.0s [ Info: (VectorDatabase{Vector{Vector{Int64}}}, SubDatabase{VectorDatabase{Vector{Vector{Int64}}}, Vector{Int64}}) 10.925049 seconds (165.75 k allocations: 10.782 MiB, 13.01% compilation time) 9.636580 seconds (7 allocations: 512 bytes) 11.568210 seconds (154.64 k allocations: 10.077 MiB, 2.82% gc time, 15.71% compilation time) 9.790236 seconds (7 allocations: 512 bytes) 11.602052 seconds (154.55 k allocations: 10.073 MiB, 12.88% compilation time) 10.163489 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time indexing sets with ExhaustiveSearch | 3000 3000 1m05.6s 1.163387 seconds (227.56 k allocations: 14.253 MiB, 96.54% compilation time) 0.039860 seconds (7 allocations: 512 bytes) 1.826261 seconds (235.77 k allocations: 15.067 MiB, 98.11% compilation time) 0.036122 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time Normalized Cosine and Normalized Angle distances | 2000 2000 5.0s 1.889660 seconds (289.51 k allocations: 17.769 MiB, 97.10% compilation time) 0.053803 seconds (7 allocations: 512 bytes) Test Summary: | Pass Total Time Binary hamming distance | 1000 1000 2.6s allknn 2%|▉ | ETA: 0:03:30 allknn 100%|█████████████████████████████████████████████| Time: 0:00:04 ExhaustiveSearch allknn: 4.997936 seconds (1.80 M allocations: 110.555 MiB, 0.61% gc time, 99.95% compilation time) Test Summary: | Pass Total Time allknn | 1 1 5.2s 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 4.9s [ Info: neardup> starting: 1:100, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:02:52.570 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-10T19:02:53.303 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-10T19:02:56.573 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-10T19:02:58.510 LOG n.size quantiles:[1.0, 2.0, 2.0, 3.0, 4.0] [ Info: neardup> finished current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:02:58.999 D.map = UInt32[0x00000001, 0x00000002, 0x00000003, 0x00000005, 0x00000006, 0x00000007, 0x00000008, 0x00000016, 0x00000026, 0x0000003c, 0x00000041] D.nn = Int32[1, 2, 3, 1, 5, 6, 7, 8, 7, 3, 3, 6, 3, 3, 2, 3, 7, 5, 5, 7, 2, 22, 22, 2, 8, 8, 22, 8, 22, 22, 8, 22, 6, 22, 22, 22, 8, 38, 22, 5, 1, 2, 2, 5, 5, 7, 7, 8, 6, 7, 6, 8, 22, 7, 6, 8, 38, 6, 6, 60, 38, 60, 5, 3, 65, 6, 22, 7, 38, 22, 22, 2, 60, 65, 6, 5, 5, 65, 38, 5, 6, 8, 8, 65, 22, 6, 3, 7, 8, 8, 3, 6, 2, 3, 22, 60, 65, 7, 22, 2] D.dist = Float32[0.0, 0.0, 0.0, 0.05167973, 0.0, 0.0, 0.0, 0.0, 0.029292464, 0.0043163896, 0.060180902, 0.020146847, 0.065779686, 0.050998986, 0.047880232, 0.04469496, 0.0344404, 0.073333025, 0.02161032, 0.023435354, 0.06341684, 0.0, 0.02539879, 0.03778404, 0.035564065, 0.08275694, 0.0070222616, 0.003974259, 0.050328434, 0.013686776, 0.09333867, 0.043105185, 0.023076713, 0.0064955354, 0.028267384, 0.04212898, 0.02162397, 0.0, 0.043560207, 0.0784781, 0.0065461993, 0.02868992, 0.022869825, 0.020630777, 0.020362914, 0.047782242, 0.020642102, 0.016903281, 0.009951949, 0.052652955, 0.022793412, 0.0032216907, 0.029203057, 0.0890249, 0.027493834, 0.02079016, 0.02131015, 0.0389266, 0.06982565, 0.0, 0.0055623055, 0.044344842, 0.0813393, 0.040099144, 0.0, 0.049434662, 0.060776174, 0.02340573, 0.038662553, 0.037394106, 0.025284052, 0.029119313, 0.057614505, 0.017187476, 0.017722964, 0.018550634, 0.053899825, 0.01910001, 0.007809043, 0.017163873, 0.011919022, 0.0691905, 0.044942558, 0.026224911, 0.020097196, 0.024264216, 0.029016137, 0.07260978, 0.06608683, 0.049608886, 0.027912617, 0.03143674, 0.032808244, 0.017675519, 0.04054314, 0.01239717, 0.020427287, 0.008303881, 0.054269075, 0.011079907] Test Summary: | Pass Total Time neardup single block | 3 3 21.7s [ Info: neardup> starting: 1:16, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:00.180 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-10T19:03:00.181 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] [ Info: neardup> range: 17:32, current elements: 7, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.268 LOG add_vertex! sp=8 ep=8 n=7 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-10T19:03:03.269 LOG n.size quantiles:[4.0, 4.0, 4.0, 4.0, 4.0] [ Info: neardup> range: 33:48, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.269 [ Info: neardup> range: 49:64, current elements: 9, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.269 [ Info: neardup> range: 65:80, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.269 [ Info: neardup> range: 81:96, current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.270 [ Info: neardup> range: 97:100, current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.582 [ Info: neardup> finished current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.582 D.map = UInt32[0x00000001, 0x00000002, 0x00000003, 0x00000005, 0x00000006, 0x00000007, 0x00000008, 0x00000016, 0x00000026, 0x0000003c, 0x00000041] D.nn = Int32[1, 2, 3, 1, 5, 6, 7, 8, 7, 3, 3, 6, 3, 3, 2, 3, 7, 5, 5, 7, 2, 22, 8, 2, 8, 8, 2, 8, 5, 2, 8, 6, 6, 22, 22, 22, 8, 38, 22, 5, 1, 2, 2, 5, 5, 7, 7, 8, 6, 7, 6, 8, 22, 7, 6, 8, 38, 6, 6, 60, 38, 3, 5, 3, 65, 6, 22, 7, 38, 22, 22, 2, 60, 65, 6, 5, 5, 60, 38, 5, 6, 8, 8, 65, 22, 6, 3, 7, 8, 8, 3, 6, 2, 3, 22, 60, 65, 7, 22, 2] D.dist = Float32[0.0, 0.0, 0.0, 0.05167973, 0.0, 0.0, 0.0, 0.0, 0.029292464, 0.0043163896, 0.060180902, 0.020146847, 0.065779686, 0.050998986, 0.047880232, 0.04469496, 0.0344404, 0.073333025, 0.02161032, 0.023435354, 0.06341684, 0.0, 0.07428157, 0.03778404, 0.035564065, 0.08275694, 0.094569445, 0.003974259, 0.06281012, 0.08969551, 0.09333867, 0.049160957, 0.023076713, 0.0064955354, 0.028267384, 0.04212898, 0.02162397, 0.0, 0.043560207, 0.0784781, 0.0065461993, 0.02868992, 0.022869825, 0.020630777, 0.020362914, 0.047782242, 0.020642102, 0.016903281, 0.009951949, 0.052652955, 0.022793412, 0.0032216907, 0.029203057, 0.0890249, 0.027493834, 0.02079016, 0.02131015, 0.0389266, 0.06982565, 0.0, 0.0055623055, 0.05921203, 0.0813393, 0.040099144, 0.0, 0.049434662, 0.060776174, 0.02340573, 0.038662553, 0.037394106, 0.025284052, 0.029119313, 0.057614505, 0.017187476, 0.017722964, 0.018550634, 0.053899825, 0.06027472, 0.007809043, 0.017163873, 0.011919022, 0.0691905, 0.044942558, 0.026224911, 0.020097196, 0.024264216, 0.029016137, 0.07260978, 0.06608683, 0.049608886, 0.027912617, 0.03143674, 0.032808244, 0.017675519, 0.04054314, 0.01239717, 0.020427287, 0.008303881, 0.054269075, 0.011079907] Test Summary: | Pass Total Time neardup small block | 3 3 3.4s [ Info: neardup> starting: 1:16, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.671 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-02-10T19:03:03.671 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-10T19:03:03.671 [ Info: neardup> range: 33:48, current elements: 16, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.671 [ Info: neardup> range: 49:64, current elements: 16, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.672 [ Info: neardup> range: 65:80, current elements: 16, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.672 [ Info: neardup> range: 81:96, current elements: 19, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.672 [ Info: neardup> range: 97:100, current elements: 19, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.672 [ Info: neardup> finished current elements: 19, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:03.672 D.map = UInt32[0x00000001, 0x00000002, 0x00000003, 0x00000004, 0x00000005, 0x00000006, 0x00000007, 0x00000008, 0x00000009, 0x0000000a, 0x0000000b, 0x0000000c, 0x0000000d, 0x0000000e, 0x0000000f, 0x00000010, 0x00000041, 0x0000004a, 0x0000004e] D.nn = Int32[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 9, 4, 5, 7, 4, 16, 9, 2, 9, 8, 4, 8, 4, 15, 8, 4, 12, 2, 6, 3, 8, 11, 12, 5, 1, 2, 2, 5, 5, 9, 7, 8, 6, 9, 12, 8, 2, 12, 11, 8, 1, 6, 13, 13, 6, 13, 4, 3, 65, 12, 9, 9, 1, 12, 16, 15, 13, 74, 6, 5, 4, 78, 11, 5, 6, 8, 8, 78, 4, 6, 3, 9, 8, 9, 15, 16, 15, 15, 9, 78, 65, 7, 2, 2] 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.01104337, 0.05152297, 0.02161032, 0.023435354, 0.031029701, 0.07509303, 0.041473567, 0.03778404, 0.013815343, 0.08275694, 0.06748903, 0.003974259, 0.053638875, 0.08073783, 0.09333867, 0.047099054, 0.016748428, 0.07331103, 0.06060028, 0.097896576, 0.02162397, 0.093182504, 0.038220465, 0.0784781, 0.0065461993, 0.02868992, 0.022869825, 0.020630777, 0.020362914, 0.00949049, 0.020642102, 0.016903281, 0.009951949, 0.01853782, 0.01823026, 0.0032216907, 0.037286222, 0.052904546, 0.015187383, 0.02079016, 0.046449542, 0.0389266, 0.014780521, 0.09297061, 0.07685602, 0.014564931, 0.06183803, 0.040099144, 0.0, 0.01770556, 0.024356544, 0.021169484, 0.06292391, 0.04620433, 0.03631836, 0.01677847, 0.06566614, 0.0, 0.017722964, 0.018550634, 0.053667903, 0.0, 0.0548321, 0.017163873, 0.011919022, 0.0691905, 0.044942558, 0.012700498, 0.048383713, 0.024264216, 0.029016137, 0.031308115, 0.06608683, 0.018517673, 0.012346387, 0.026603878, 0.019202769, 0.00848794, 0.04183179, 0.04762143, 0.020427287, 0.008303881, 0.0559963, 0.011079907] 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-10T19:03:08.552 LOG append_items! ExhaustiveSearch{SimilaritySearch.DistanceWithIdentifiers{CosineDistance, MatrixDatabase{Matrix{Float32}}}, VectorDatabase{Vector{UInt32}}} sp=0 ep=7 n=7 2026-02-10T19:03:08.927 [ Info: neardup> range: 17:32, current elements: 7, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:10.114 LOG append_items! ExhaustiveSearch{SimilaritySearch.DistanceWithIdentifiers{CosineDistance, MatrixDatabase{Matrix{Float32}}}, VectorDatabase{Vector{UInt32}}} sp=7 ep=8 n=8 2026-02-10T19:03:10.114 [ Info: neardup> range: 33:48, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:10.120 [ Info: neardup> range: 49:64, current elements: 9, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:10.120 [ Info: neardup> range: 65:80, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:10.120 [ Info: neardup> range: 81:96, current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:10.120 [ Info: neardup> range: 97:100, current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:11.281 [ Info: neardup> finished current elements: 11, n: 100, ϵ: 0.1, timestamp: 2026-02-10T19:03:11.281 D.map = UInt32[0x00000001, 0x00000002, 0x00000003, 0x00000005, 0x00000006, 0x00000007, 0x00000008, 0x00000016, 0x00000026, 0x0000003c, 0x00000041] D.nn = Int32[1, 2, 3, 1, 5, 6, 7, 8, 7, 3, 3, 6, 3, 3, 2, 3, 7, 5, 5, 7, 2, 22, 8, 2, 8, 8, 2, 8, 5, 2, 8, 6, 6, 22, 22, 22, 8, 38, 22, 5, 1, 2, 2, 5, 5, 7, 7, 8, 6, 7, 6, 8, 22, 7, 6, 8, 38, 6, 6, 60, 38, 3, 5, 3, 65, 6, 22, 7, 38, 22, 22, 2, 60, 65, 6, 5, 5, 60, 38, 5, 6, 8, 8, 65, 22, 6, 3, 7, 8, 8, 3, 6, 2, 3, 22, 60, 65, 7, 22, 2] D.dist = Float32[0.0, 0.0, 0.0, 0.05167973, 0.0, 0.0, 0.0, 0.0, 0.029292464, 0.0043163896, 0.060180902, 0.020146847, 0.065779686, 0.050998986, 0.047880232, 0.04469496, 0.0344404, 0.073333025, 0.02161032, 0.023435354, 0.06341684, 0.0, 0.07428157, 0.03778404, 0.035564065, 0.08275694, 0.094569445, 0.003974259, 0.06281012, 0.08969551, 0.09333867, 0.049160957, 0.023076713, 0.0064955354, 0.028267384, 0.04212898, 0.02162397, 0.0, 0.043560207, 0.0784781, 0.0065461993, 0.02868992, 0.022869825, 0.020630777, 0.020362914, 0.047782242, 0.020642102, 0.016903281, 0.009951949, 0.052652955, 0.022793412, 0.0032216907, 0.029203057, 0.0890249, 0.027493834, 0.02079016, 0.02131015, 0.0389266, 0.06982565, 0.0, 0.0055623055, 0.05921203, 0.0813393, 0.040099144, 0.0, 0.049434662, 0.060776174, 0.02340573, 0.038662553, 0.037394106, 0.025284052, 0.029119313, 0.057614505, 0.017187476, 0.017722964, 0.018550634, 0.053899825, 0.06027472, 0.007809043, 0.017163873, 0.011919022, 0.0691905, 0.044942558, 0.026224911, 0.020097196, 0.024264216, 0.029016137, 0.07260978, 0.06608683, 0.049608886, 0.027912617, 0.03143674, 0.032808244, 0.017675519, 0.04054314, 0.01239717, 0.020427287, 0.008303881, 0.054269075, 0.011079907] Test Summary: | Pass Total Time neardup small block with filterblocks=false | 3 3 7.6s computing farthest point 1, dmax: Inf, imax: 17, n: 30 computing farthest point 2, dmax: 1.0632313, imax: 14, n: 30 computing farthest point 3, dmax: 0.8788038, imax: 27, n: 30 computing farthest point 4, dmax: 0.7663176, imax: 1, n: 30 computing farthest point 5, dmax: 0.6846768, imax: 16, n: 30 computing farthest point 6, dmax: 0.6831313, imax: 4, n: 30 computing farthest point 7, dmax: 0.601693, imax: 24, n: 30 computing farthest point 8, dmax: 0.58254033, imax: 8, n: 30 computing farthest point 9, dmax: 0.5480437, imax: 12, n: 30 computing farthest point 10, dmax: 0.50210816, imax: 11, n: 30 Test Summary: | Pass Total Time farthest first traversal | 3 3 2.0s 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-02-10T19:03:20.170 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-10T19:03:21.834 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=14, Δ=0.8571428, maxvisits=112) 2026-02-10T19:03:36.142 LOG n.size quantiles:[3.0, 4.0, 4.0, 4.0, 4.0] (i, j, d) = (20, 631, -1.1920929f-7) (i, j, d, :parallel) = (20, 631, -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 => 23.462294060999998, :exact => 0.967461215) Test Summary: | Pass Total Time closestpair | 4 4 24.9s 7.063558 seconds (196.76 k allocations: 12.324 MiB, 24.72% compilation time) SEARCH Exhaustive 1: 0.004894 seconds SEARCH Exhaustive 2: 0.004670 seconds SEARCH Exhaustive 3: 0.005464 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-10T19:04:03.459 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-10T19:04:05.234 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.440603, maxvisits=236) 2026-02-10T19:04:15.683 LOG n.size quantiles:[2.0, 3.0, 4.0, 4.0, 4.0] LOG add_vertex! sp=10735 ep=10739 n=10734 BeamSearch(bsize=8, Δ=1.155, maxvisits=364) 2026-02-10T19:04:16.684 LOG n.size quantiles:[4.0, 4.0, 5.0, 6.0, 7.0] LOG add_vertex! sp=25255 ep=25259 n=25254 BeamSearch(bsize=4, Δ=1.1, maxvisits=382) 2026-02-10T19:04:17.688 LOG n.size quantiles:[5.0, 6.0, 7.0, 8.0, 8.0] LOG add_vertex! sp=37730 ep=37734 n=37729 BeamSearch(bsize=4, Δ=1.1, maxvisits=382) 2026-02-10T19:04:18.688 LOG n.size quantiles:[5.0, 5.0, 6.0, 7.0, 10.0] LOG add_vertex! sp=47020 ep=47024 n=47019 BeamSearch(bsize=8, Δ=1.1287501, maxvisits=514) 2026-02-10T19:04:19.689 LOG n.size quantiles:[5.0, 6.0, 6.0, 9.0, 9.0] LOG add_vertex! sp=56710 ep=56714 n=56709 BeamSearch(bsize=8, Δ=1.1287501, maxvisits=514) 2026-02-10T19:04:20.689 LOG n.size quantiles:[4.0, 7.0, 7.0, 8.0, 9.0] LOG add_vertex! sp=65320 ep=65324 n=65319 BeamSearch(bsize=8, Δ=1.075, maxvisits=504) 2026-02-10T19:04:21.689 LOG n.size quantiles:[5.0, 5.0, 7.0, 9.0, 11.0] LOG add_vertex! sp=74860 ep=74864 n=74859 BeamSearch(bsize=8, Δ=1.075, maxvisits=504) 2026-02-10T19:04:22.690 LOG n.size quantiles:[7.0, 7.0, 7.0, 7.0, 8.0] LOG add_vertex! sp=83965 ep=83969 n=83964 BeamSearch(bsize=8, Δ=1.075, maxvisits=504) 2026-02-10T19:04:23.690 LOG n.size quantiles:[6.0, 7.0, 7.0, 7.0, 8.0] LOG add_vertex! sp=90200 ep=90204 n=90199 BeamSearch(bsize=15, Δ=1.2733874, maxvisits=584) 2026-02-10T19:04:24.691 LOG n.size quantiles:[6.0, 7.0, 8.0, 9.0, 9.0] LOG add_vertex! sp=97920 ep=97924 n=97919 BeamSearch(bsize=15, Δ=1.2733874, maxvisits=584) 2026-02-10T19:04:25.691 LOG n.size quantiles:[7.0, 7.0, 7.0, 7.0, 8.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, 13.0, 15.0, 17.0, 22.0, 82.0] [ Info: minrecall: queries per second: 3057.6813329095835, recall: 0.900625 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=13, Δ=1.155, maxvisits=742)) 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, 13.0, 15.0, 17.0, 22.0, 82.0] [ Info: ===================== rebuild ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch(bsize=12, Δ=1.155, maxvisits=602)), 1000, 8) [ Info: rebuild: queries per second: 15186.00786747584, recall: 0.90225 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=12, Δ=1.155, maxvisits=602)) 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=13, Δ=1.1851876, maxvisits=742)), 1000, 8) 0.655925 seconds (93.03 k allocations: 5.467 MiB, 87.57% compilation time) [ Info: matrixhints: queries per second: 12366.814356110433, recall: 0.904625 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=13, Δ=1.1851876, maxvisits=742)) 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, 13.0, 15.0, 17.0, 22.0, 82.0] 3.089858 seconds (158.41 k allocations: 10.370 MiB, 52.71% compilation time) SEARCH Exhaustive 1: 0.001251 seconds SEARCH Exhaustive 2: 0.001339 seconds SEARCH Exhaustive 3: 0.001610 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-10T19:05:38.708 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-10T19:05:40.432 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.440603, maxvisits=236) 2026-02-10T19:05:50.196 LOG n.size quantiles:[2.0, 3.0, 4.0, 4.0, 4.0] LOG add_vertex! sp=18040 ep=18044 n=18039 BeamSearch(bsize=14, Δ=0.95, maxvisits=386) 2026-02-10T19:05:51.196 LOG n.size quantiles:[4.0, 5.0, 5.0, 7.0, 7.0] LOG add_vertex! sp=32440 ep=32444 n=32439 BeamSearch(bsize=4, Δ=1.1, maxvisits=382) 2026-02-10T19:05:52.197 LOG n.size quantiles:[5.0, 6.0, 6.0, 7.0, 7.0] LOG add_vertex! sp=44670 ep=44674 n=44669 BeamSearch(bsize=8, Δ=1.1287501, maxvisits=514) 2026-02-10T19:05:53.197 LOG n.size quantiles:[4.0, 4.0, 7.0, 8.0, 9.0] LOG add_vertex! sp=51720 ep=51724 n=51719 BeamSearch(bsize=8, Δ=1.1287501, maxvisits=514) 2026-02-10T19:05:54.197 LOG n.size quantiles:[6.0, 6.0, 8.0, 8.0, 9.0] LOG add_vertex! sp=62035 ep=62039 n=62034 BeamSearch(bsize=8, Δ=1.075, maxvisits=504) 2026-02-10T19:05:55.198 LOG n.size quantiles:[5.0, 5.0, 6.0, 7.0, 7.0] LOG add_vertex! sp=72460 ep=72464 n=72459 BeamSearch(bsize=8, Δ=1.075, maxvisits=504) 2026-02-10T19:05:56.198 LOG n.size quantiles:[6.0, 7.0, 7.0, 7.0, 8.0] LOG add_vertex! sp=82215 ep=82219 n=82214 BeamSearch(bsize=8, Δ=1.075, maxvisits=504) 2026-02-10T19:05:57.199 LOG n.size quantiles:[6.0, 7.0, 8.0, 8.0, 10.0] LOG add_vertex! sp=90170 ep=90174 n=90169 BeamSearch(bsize=15, Δ=1.2733874, maxvisits=584) 2026-02-10T19:05:58.199 LOG n.size quantiles:[4.0, 7.0, 7.0, 8.0, 8.0] LOG add_vertex! sp=98215 ep=98219 n=98214 BeamSearch(bsize=15, Δ=1.2733874, maxvisits=584) 2026-02-10T19:05:59.199 LOG n.size quantiles:[4.0, 7.0, 7.0, 8.0, 8.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, 13.0, 15.0, 17.0, 22.0, 82.0] [ Info: minrecall: queries per second: 2962.5347954896165, recall: 0.900625 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=13, Δ=1.155, maxvisits=742)) 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, 13.0, 15.0, 17.0, 22.0, 82.0] [ Info: ===================== rebuild ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch(bsize=12, Δ=1.155, maxvisits=602)), 1000, 8) [ Info: rebuild: queries per second: 18118.96087107122, recall: 0.90225 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=12, Δ=1.155, maxvisits=602)) 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=13, Δ=1.1851876, maxvisits=742)), 1000, 8) 0.648857 seconds (94.11 k allocations: 5.618 MiB, 89.00% compilation time) [ Info: matrixhints: queries per second: 14681.989574025563, recall: 0.904625 graph.algo = Base.RefValue{BeamSearch}(BeamSearch(bsize=13, Δ=1.1851876, maxvisits=742)) 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, 13.0, 15.0, 17.0, 22.0, 82.0] Test Summary: | Pass Total Time vector indexing with SearchGraph | 18 18 2m59.0s Testing SimilaritySearch tests passed Testing completed after 692.33s PkgEval succeeded after 749.23s