Package evaluation to test SimilaritySearch on Julia 1.14.0-DEV.1491 (0e7d18362a*) started at 2026-01-11T12:17:37.229 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Activating project at `~/.julia/environments/v1.14` Set-up completed after 10.62s ################################################################################ # Installation # Installing SimilaritySearch... Resolving package versions... Installed CompositionsBase ───────────────── v0.1.2 Installed CommonWorldInvalidations ───────── v1.0.0 Installed Adapt ──────────────────────────── v4.4.0 Installed ConstructionBase ───────────────── v1.6.0 Installed MacroTools ─────────────────────── v0.5.16 Installed ManualMemory ───────────────────── v0.1.8 Installed DataStructures ─────────────────── v0.18.22 Installed StatsBase ──────────────────────── v0.33.21 Installed BitTwiddlingConvenienceFunctions ─ v0.1.6 Installed OrderedCollections ─────────────── v1.8.1 Installed Compat ─────────────────────────── v4.18.1 Installed StrideArraysCore ───────────────── v0.5.8 Installed DataAPI ────────────────────────── v1.16.0 Installed ArrayInterface ─────────────────── v7.22.0 Installed Statistics ─────────────────────── v1.11.1 Installed SIMDTypes ──────────────────────── v0.1.0 Installed StatsAPI ───────────────────────── v1.8.0 Installed CpuId ──────────────────────────── v0.3.1 Installed IrrationalConstants ────────────── v0.2.6 Installed ProgressMeter ──────────────────── v1.11.0 Installed LayoutPointers ─────────────────── v0.1.17 Installed Distances ──────────────────────── v0.10.12 Installed StaticArrayInterface ───────────── v1.8.0 Installed PrecompileTools ────────────────── v1.3.3 Installed CPUSummary ─────────────────────── v0.2.7 Installed SciMLPublic ────────────────────── v1.0.1 Installed IfElse ─────────────────────────── v0.1.1 Installed Requires ───────────────────────── v1.3.1 Installed LogExpFunctions ────────────────── v0.3.29 Installed Parameters ─────────────────────── v0.12.3 Installed Polyester ──────────────────────── v0.7.18 Installed CloseOpenIntervals ─────────────── v0.1.13 Installed InverseFunctions ───────────────── v0.1.17 Installed Missings ───────────────────────── v1.2.0 Installed Static ─────────────────────────── v1.3.1 Installed Preferences ────────────────────── v1.5.1 Installed SortingAlgorithms ──────────────── v1.2.2 Installed ThreadingUtilities ─────────────── v0.5.5 Installed PolyesterWeave ─────────────────── v0.2.2 Installed UnPack ─────────────────────────── v1.0.2 Installed DocStringExtensions ────────────── v0.9.5 Installed Accessors ──────────────────────── v0.1.43 Installed SearchModels ───────────────────── v0.4.1 Installed SimilaritySearch ───────────────── v0.13.7 Updating `~/.julia/environments/v1.14/Project.toml` [053f045d] + SimilaritySearch v0.13.7 Updating `~/.julia/environments/v1.14/Manifest.toml` [7d9f7c33] + Accessors v0.1.43 [79e6a3ab] + Adapt v4.4.0 [4fba245c] + ArrayInterface v7.22.0 [62783981] + BitTwiddlingConvenienceFunctions v0.1.6 [2a0fbf3d] + CPUSummary v0.2.7 [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 [adafc99b] + CpuId v0.3.1 [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 [d96e819e] + Parameters v0.12.3 [f517fe37] + Polyester v0.7.18 [1d0040c9] + PolyesterWeave v0.2.2 [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.4.1 [053f045d] + SimilaritySearch v0.13.7 [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 [3a884ed6] + UnPack v1.0.2 [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.29+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.36s ################################################################################ # Precompilation # ERROR: LoadError: MethodError: no method matching setindex!(::Base.ScopedValues.ScopedValue{IO}, ::Nothing) The function `setindex!` exists, but no method is defined for this combination of argument types. Stacktrace: [1] top-level scope @ /PkgEval.jl/scripts/precompile.jl:10 [2] include(mod::Module, _path::String) @ Base ./Base.jl:309 [3] exec_options(opts::Base.JLOptions) @ Base ./client.jl:344 [4] _start() @ Base ./client.jl:585 in expression starting at /PkgEval.jl/scripts/precompile.jl:6 caused by: MethodError: no method matching setindex!(::Base.ScopedValues.ScopedValue{IO}, ::Base.DevNull) The function `setindex!` exists, but no method is defined for this combination of argument types. Stacktrace: [1] top-level scope @ /PkgEval.jl/scripts/precompile.jl:7 [2] include(mod::Module, _path::String) @ Base ./Base.jl:309 [3] exec_options(opts::Base.JLOptions) @ Base ./client.jl:344 [4] _start() @ Base ./client.jl:585 Precompilation failed after 13.57s ################################################################################ # Testing # Testing SimilaritySearch Status `/tmp/jl_I8420Z/Project.toml` [7d9f7c33] Accessors v0.1.43 [4c88cf16] Aqua v0.8.14 [b4f34e82] Distances v0.10.12 [f517fe37] Polyester v0.7.18 [92933f4c] ProgressMeter v1.11.0 ⌅ [0e966ebe] SearchModels v0.4.1 [053f045d] SimilaritySearch v0.13.7 [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_I8420Z/Manifest.toml` [7d9f7c33] Accessors v0.1.43 [79e6a3ab] Adapt v4.4.0 [4c88cf16] Aqua v0.8.14 [4fba245c] ArrayInterface v7.22.0 [62783981] BitTwiddlingConvenienceFunctions v0.1.6 [2a0fbf3d] CPUSummary v0.2.7 [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 [adafc99b] CpuId v0.3.1 [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 [d96e819e] Parameters v0.12.3 [f517fe37] Polyester v0.7.18 [1d0040c9] PolyesterWeave v0.2.2 [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.4.1 [053f045d] SimilaritySearch v0.13.7 [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 [3a884ed6] UnPack v1.0.2 [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.17.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.29+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 | 56 56 8.9s Test Summary: | Pass Total Time heap | 16 16 0.1s Test Summary: | Pass Total Time KnnHeap | 30005 30005 2.5s Test Summary: | Pass Total Time XKnn | 25005 25005 1.8s Test Summary: | Pass Total Time XKnn pop ops | 9603 9603 0.8s [ Info: (MatrixDatabase{Matrix{Float32}}, SubDatabase{MatrixDatabase{Matrix{Float32}}, Vector{Int64}}) 5.445722 seconds (1000 allocations: 78.125 KiB) 5.343389 seconds (1000 allocations: 78.125 KiB) 1.830292 seconds (1000 allocations: 78.125 KiB) 1.849544 seconds (1000 allocations: 78.125 KiB) 1.860523 seconds (1000 allocations: 78.125 KiB) 1.828008 seconds (1000 allocations: 78.125 KiB) 1.793362 seconds (1000 allocations: 78.125 KiB) 1.833613 seconds (1000 allocations: 78.125 KiB) 10.783713 seconds (1000 allocations: 78.125 KiB) 10.821589 seconds (1000 allocations: 78.125 KiB) 22.447114 seconds (1000 allocations: 78.125 KiB) 22.484210 seconds (1000 allocations: 78.125 KiB) 15.641947 seconds (6.23 k allocations: 358.094 KiB) 15.731522 seconds (1000 allocations: 78.125 KiB) 12.331686 seconds (1.00 k allocations: 78.141 KiB) 12.061979 seconds (1000 allocations: 78.125 KiB) Test Summary: | Pass Total Time indexing vectors with ExhaustiveSearch | 8000 8000 2m32.8s [ Info: (VectorDatabase{Vector{Vector{Int64}}}, SubDatabase{VectorDatabase{Vector{Vector{Int64}}}, Vector{Int64}}) 2.658218 seconds (1000 allocations: 78.125 KiB) 2.599993 seconds (1000 allocations: 78.125 KiB) 16.186321 seconds (1000 allocations: 78.125 KiB) 16.038390 seconds (1000 allocations: 78.125 KiB) 15.788672 seconds (1000 allocations: 78.125 KiB) 16.076361 seconds (1000 allocations: 78.125 KiB) 2.737903 seconds (1000 allocations: 78.125 KiB) 2.756378 seconds (1000 allocations: 78.125 KiB) Test Summary: | Pass Total Time indexing sequences with ExhaustiveSearch | 4000 4000 1m17.6s [ Info: (VectorDatabase{Vector{Vector{Int64}}}, SubDatabase{VectorDatabase{Vector{Vector{Int64}}}, Vector{Int64}}) 8.883894 seconds (1000 allocations: 78.125 KiB) 9.126898 seconds (1000 allocations: 78.125 KiB) 9.044945 seconds (1000 allocations: 78.125 KiB) 8.899378 seconds (1000 allocations: 78.125 KiB) 9.329939 seconds (1000 allocations: 78.125 KiB) 8.995962 seconds (1000 allocations: 78.125 KiB) Test Summary: | Pass Total Time indexing sets with ExhaustiveSearch | 3000 3000 56.6s 0.041680 seconds (1.00 k allocations: 78.141 KiB) 0.042004 seconds (1000 allocations: 78.125 KiB) 0.020258 seconds (1000 allocations: 78.125 KiB) 0.020149 seconds (1000 allocations: 78.125 KiB) Test Summary: | Pass Total Time Normalized Cosine and Normalized Angle distances | 2000 2000 2.0s 0.022223 seconds (1000 allocations: 78.125 KiB) 0.021977 seconds (1000 allocations: 78.125 KiB) Test Summary: | Pass Total Time Binary hamming distance | 1000 1000 0.9s ExhaustiveSearch allknn: 3.767125 seconds (2.40 M allocations: 129.302 MiB, 10.45% gc time, 99.97% compilation time) ParallelExhaustiveSearch allknn: 0.974672 seconds (611.34 k allocations: 30.687 MiB, 99.87% compilation time) Test Summary: | Pass Total Time allknn | 3 3 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 2.3s [ Info: neardup> starting: 1:100, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:52.268 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-11T12:25:52.499 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] LOG add_vertex! sp=2 ep=2 n=2 BeamSearch BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-11T12:25:53.820 LOG n.size quantiles:[1.0, 1.0, 1.0, 1.0, 1.0] [ Info: neardup> finished current elements: 9, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:54.128 D.map = UInt32[0x00000001, 0x00000002, 0x00000005, 0x00000007, 0x0000000a, 0x0000001b, 0x0000001d, 0x0000003d, 0x00000056] D.nn = Int32[1, 2, 1, 1, 5, 1, 7, 1, 7, 10, 7, 2, 10, 5, 10, 2, 1, 5, 7, 7, 2, 2, 2, 7, 5, 5, 27, 27, 29, 1, 1, 5, 27, 1, 2, 1, 1, 10, 27, 29, 10, 7, 10, 27, 2, 2, 1, 1, 1, 27, 1, 10, 1, 7, 2, 27, 27, 2, 10, 7, 61, 7, 1, 2, 1, 29, 5, 1, 10, 5, 27, 27, 2, 29, 29, 29, 2, 1, 27, 29, 1, 1, 1, 27, 29, 86, 5, 5, 7, 1, 10, 2, 61, 1, 27, 27, 27, 29, 10, 86] D.dist = Float32[0.0, 0.0, 0.058959424, 0.02763915, 0.0, 0.05072719, 0.0, 0.030780256, 0.0509122, 0.0, 0.012160182, 0.008224726, 0.048333466, 0.024677575, 0.08634913, 0.03093326, 0.096589446, 0.02342701, 0.04384327, 0.026951194, 0.056064427, 0.026771426, 0.06341714, 0.08190727, 0.011847913, 0.0762229, 0.0, 0.041340113, 0.0, 0.047683, 0.053304553, 0.035491824, 0.06218648, 0.03732717, 0.035923243, 0.07213879, 0.061234295, 0.035686135, 0.01179564, 0.029274046, 0.02015227, 0.043111444, 0.01689291, 0.06673396, 0.09969449, 0.04765129, 0.06656611, 0.025290132, 0.016372383, 0.016133428, 0.039010644, 0.008591056, 0.059135735, 0.024771333, 0.011443734, 0.03767979, 0.006530583, 0.078176916, 0.049723744, 0.069672406, 0.0, 0.048375726, 0.034051538, 0.018846214, 0.03839135, 0.006225407, 0.028935194, 0.06589818, 0.050964892, 0.080170035, 0.06139797, 0.032806456, 0.012695193, 0.012306511, 0.021691322, 0.04118371, 0.084457695, 0.031616926, 0.030036867, 0.034660637, 0.024757206, 0.031918287, 0.017968118, 0.03827429, 0.018870533, 0.0, 0.05605054, 0.069547474, 0.031224132, 0.039748073, 0.002780795, 0.0051739216, 0.062178373, 0.051546693, 0.035679758, 0.017713845, 0.048753142, 0.040732503, 0.06422192, 0.02657938] Test Summary: | Pass Total Time neardup single block | 3 3 13.4s [ Info: neardup> starting: 1:16, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.068 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-11T12:25:55.069 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-01-11T12:25:55.070 [ Info: neardup> range: 33:48, current elements: 7, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.070 [ Info: neardup> range: 49:64, current elements: 7, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.070 [ Info: neardup> range: 65:80, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.071 [ Info: neardup> range: 81:96, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.071 [ Info: neardup> range: 97:100, current elements: 9, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.071 [ Info: neardup> finished current elements: 9, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.071 D.map = UInt32[0x00000001, 0x00000002, 0x00000005, 0x00000007, 0x0000000a, 0x0000001b, 0x0000001d, 0x0000003d, 0x00000056] D.nn = Int32[1, 2, 1, 1, 5, 1, 7, 1, 7, 10, 7, 2, 10, 5, 10, 2, 1, 5, 7, 7, 2, 2, 2, 7, 5, 5, 27, 2, 29, 1, 1, 5, 27, 1, 2, 1, 1, 10, 27, 29, 10, 7, 10, 27, 2, 2, 1, 1, 1, 27, 1, 10, 1, 7, 2, 27, 27, 2, 10, 7, 61, 7, 1, 2, 1, 29, 5, 1, 10, 5, 27, 27, 2, 29, 29, 29, 2, 1, 27, 29, 1, 1, 1, 27, 29, 86, 5, 5, 7, 1, 10, 2, 61, 1, 27, 27, 27, 29, 10, 86] D.dist = Float32[0.0, 0.0, 0.058959424, 0.02763915, 0.0, 0.05072719, 0.0, 0.030780256, 0.0509122, 0.0, 0.012160182, 0.008224726, 0.048333466, 0.024677575, 0.08634913, 0.03093326, 0.096589446, 0.02342701, 0.04384327, 0.026951194, 0.056064427, 0.026771426, 0.06341714, 0.08190727, 0.011847913, 0.0762229, 0.0, 0.04538828, 0.0, 0.047683, 0.053304553, 0.035491824, 0.06218648, 0.03732717, 0.035923243, 0.07213879, 0.061234295, 0.035686135, 0.01179564, 0.029274046, 0.02015227, 0.043111444, 0.01689291, 0.06673396, 0.09969449, 0.04765129, 0.06656611, 0.025290132, 0.016372383, 0.016133428, 0.039010644, 0.008591056, 0.059135735, 0.024771333, 0.011443734, 0.03767979, 0.006530583, 0.078176916, 0.049723744, 0.069672406, 0.0, 0.048375726, 0.034051538, 0.018846214, 0.03839135, 0.006225407, 0.028935194, 0.06589818, 0.050964892, 0.080170035, 0.06139797, 0.032806456, 0.012695193, 0.012306511, 0.021691322, 0.04118371, 0.084457695, 0.031616926, 0.030036867, 0.034660637, 0.024757206, 0.031918287, 0.017968118, 0.03827429, 0.018870533, 0.0, 0.05605054, 0.069547474, 0.031224132, 0.039748073, 0.002780795, 0.0051739216, 0.062178373, 0.051546693, 0.035679758, 0.017713845, 0.048753142, 0.040732503, 0.06422192, 0.02657938] Test Summary: | Pass Total Time neardup small block | 3 3 0.0s [ Info: neardup> starting: 1:16, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.141 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-11T12:25:55.141 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-11T12:25:55.142 [ Info: neardup> range: 33:48, current elements: 16, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.142 [ Info: neardup> range: 49:64, current elements: 16, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.142 [ Info: neardup> range: 65:80, current elements: 17, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.142 [ Info: neardup> range: 81:96, current elements: 17, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.142 [ Info: neardup> range: 97:100, current elements: 17, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.142 [ Info: neardup> finished current elements: 17, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:25:55.142 D.map = UInt32[0x00000001, 0x00000002, 0x00000003, 0x00000004, 0x00000005, 0x00000006, 0x00000007, 0x00000008, 0x00000009, 0x0000000a, 0x0000000b, 0x0000000c, 0x0000000d, 0x0000000e, 0x0000000f, 0x00000010, 0x0000003d] D.nn = Int32[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 3, 14, 11, 7, 2, 12, 8, 3, 5, 5, 6, 3, 8, 8, 11, 5, 3, 4, 16, 9, 9, 13, 6, 14, 10, 7, 10, 12, 3, 13, 15, 8, 1, 6, 1, 10, 3, 9, 2, 15, 6, 16, 10, 11, 61, 7, 1, 12, 6, 14, 4, 8, 13, 14, 13, 6, 2, 8, 8, 8, 3, 8, 3, 8, 11, 4, 3, 14, 8, 8, 14, 4, 7, 4, 10, 2, 61, 11, 61, 6, 12, 8, 13, 8] 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.05858302, 0.016016483, 0.022540033, 0.026951194, 0.056064427, 0.0069713593, 0.023757696, 0.06222236, 0.011847913, 0.0762229, 0.04114139, 0.014999211, 0.053873062, 0.020447731, 0.038211107, 0.035491824, 0.0030282736, 0.01937455, 0.002102673, 0.032914698, 0.008866727, 0.0152055025, 0.01265353, 0.024671793, 0.02015227, 0.043111444, 0.01689291, 0.05763787, 0.0145712495, 0.032322347, 0.004942775, 0.008414447, 0.016372383, 0.009889245, 0.039010644, 0.008591056, 0.001327157, 0.0071407557, 0.011443734, 0.009603858, 0.0196293, 0.03570503, 0.049723744, 0.02645439, 0.0, 0.048375726, 0.034051538, 0.005535722, 0.0039044023, 0.050064564, 0.015804648, 0.044605017, 0.036230683, 0.021692336, 0.027705133, 0.012325466, 0.012695193, 0.033352137, 0.038831472, 0.02865398, 0.07813859, 0.012853444, 0.01363641, 0.011342287, 0.02129978, 0.0062821507, 0.012191951, 0.013766348, 0.032194316, 0.089918494, 0.00927639, 0.051788867, 0.031224132, 0.018185735, 0.002780795, 0.0051739216, 0.062178373, 0.03149122, 0.047653794, 0.035951853, 0.076797366, 0.005758226, 0.06174147, 0.02217704] 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-11T12:26:01.400 LOG append_items! ExhaustiveSearch{SimilaritySearch.DistanceWithIdentifiers{CosineDistance, MatrixDatabase{Matrix{Float32}}}, VectorDatabase{Vector{UInt32}}} sp=0 ep=5 n=5 2026-01-11T12:26:01.401 [ Info: neardup> range: 17:32, current elements: 5, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:26:01.406 [ Info: neardup> range: 33:48, current elements: 7, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:26:01.406 [ Info: neardup> range: 49:64, current elements: 7, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:26:01.406 [ Info: neardup> range: 65:80, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:26:01.406 [ Info: neardup> range: 81:96, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:26:01.407 [ Info: neardup> range: 97:100, current elements: 9, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:26:01.407 [ Info: neardup> finished current elements: 9, n: 100, ϵ: 0.1, timestamp: 2026-01-11T12:26:01.407 D.map = UInt32[0x00000001, 0x00000002, 0x00000005, 0x00000007, 0x0000000a, 0x0000001b, 0x0000001d, 0x0000003d, 0x00000056] D.nn = Int32[1, 2, 1, 1, 5, 1, 7, 1, 7, 10, 7, 2, 10, 5, 10, 2, 1, 5, 7, 7, 2, 2, 2, 7, 5, 5, 27, 2, 29, 1, 1, 5, 27, 1, 2, 1, 1, 10, 27, 29, 10, 7, 10, 27, 2, 2, 1, 1, 1, 27, 1, 10, 1, 7, 2, 27, 27, 2, 10, 7, 61, 7, 1, 2, 1, 29, 5, 1, 10, 5, 27, 27, 2, 29, 29, 29, 2, 1, 27, 29, 1, 1, 1, 27, 29, 86, 5, 5, 7, 1, 10, 2, 61, 1, 27, 27, 27, 29, 10, 86] D.dist = Float32[0.0, 0.0, 0.058959424, 0.02763915, 0.0, 0.05072719, 0.0, 0.030780256, 0.0509122, 0.0, 0.012160182, 0.008224726, 0.048333466, 0.024677575, 0.08634913, 0.03093326, 0.096589446, 0.02342701, 0.04384327, 0.026951194, 0.056064427, 0.026771426, 0.06341714, 0.08190727, 0.011847913, 0.0762229, 0.0, 0.04538828, 0.0, 0.047683, 0.053304553, 0.035491824, 0.06218648, 0.03732717, 0.035923243, 0.07213879, 0.061234295, 0.035686135, 0.01179564, 0.029274046, 0.02015227, 0.043111444, 0.01689291, 0.06673396, 0.09969449, 0.04765129, 0.06656611, 0.025290132, 0.016372383, 0.016133428, 0.039010644, 0.008591056, 0.059135735, 0.024771333, 0.011443734, 0.03767979, 0.006530583, 0.078176916, 0.049723744, 0.069672406, 0.0, 0.048375726, 0.034051538, 0.018846214, 0.03839135, 0.006225407, 0.028935194, 0.06589818, 0.050964892, 0.080170035, 0.06139797, 0.032806456, 0.012695193, 0.012306511, 0.021691322, 0.04118371, 0.084457695, 0.031616926, 0.030036867, 0.034660637, 0.024757206, 0.031918287, 0.017968118, 0.03827429, 0.018870533, 0.0, 0.05605054, 0.069547474, 0.031224132, 0.039748073, 0.002780795, 0.0051739216, 0.062178373, 0.051546693, 0.035679758, 0.017713845, 0.048753142, 0.040732503, 0.06422192, 0.02657938] Test Summary: | Pass Total Time neardup small block with filterblocks=false | 3 3 6.3s computing farthest point 1, dmax: Inf, imax: 13, n: 30 computing farthest point 2, dmax: 1.4845674, imax: 26, n: 30 computing farthest point 3, dmax: 1.0295048, imax: 16, n: 30 computing farthest point 4, dmax: 1.0177153, imax: 9, n: 30 computing farthest point 5, dmax: 0.79810154, imax: 30, n: 30 computing farthest point 6, dmax: 0.7970321, imax: 15, n: 30 computing farthest point 7, dmax: 0.6937518, imax: 14, n: 30 computing farthest point 8, dmax: 0.6549718, imax: 29, n: 30 computing farthest point 9, dmax: 0.61077297, imax: 11, n: 30 computing farthest point 10, dmax: 0.5287507, imax: 27, n: 30 Test Summary: | Pass Total Time farthest first traversal | 3 3 1.2s Test Summary: | Pass Total Time AdjacencyList | 15 15 1.1s LOG add_vertex! sp=1 ep=1 n=1 BeamSearch BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-11T12:26:06.957 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] LOG add_vertex! sp=295 ep=299 n=294 BeamSearch BeamSearch(bsize=2, Δ=0.9, maxvisits=114) 2026-01-11T12:26:16.116 LOG n.size quantiles:[3.0, 4.0, 4.0, 4.0, 4.0] (i, j, d) = (3, 674, -1.1920929f-7) (i, j, d, :parallel) = (3, 674, -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 => 14.170211734999999, :exact => 0.766151007) Test Summary: | Pass Total Time closestpair | 4 4 15.5s 1.915419 seconds (1.00 k allocations: 140.742 KiB) SEARCH Exhaustive 1: 0.002184 seconds SEARCH Exhaustive 2: 0.002167 seconds SEARCH Exhaustive 3: 0.002140 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 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-11T12:26:31.181 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] LOG add_vertex! sp=295 ep=299 n=294 BeamSearch BeamSearch(bsize=4, Δ=1.155, maxvisits=212) 2026-01-11T12:26:34.850 LOG n.size quantiles:[3.0, 4.0, 4.0, 6.0, 6.0] LOG add_vertex! sp=26310 ep=26314 n=26309 BeamSearch BeamSearch(bsize=16, Δ=1.155, maxvisits=462) 2026-01-11T12:26:35.850 LOG n.size quantiles:[5.0, 6.0, 7.0, 8.0, 10.0] LOG add_vertex! sp=44330 ep=44334 n=44329 BeamSearch BeamSearch(bsize=10, Δ=1.244447, maxvisits=510) 2026-01-11T12:26:36.850 LOG n.size quantiles:[6.0, 6.0, 7.0, 8.0, 9.0] LOG add_vertex! sp=58885 ep=58889 n=58884 BeamSearch BeamSearch(bsize=12, Δ=1.155, maxvisits=488) 2026-01-11T12:26:37.850 LOG n.size quantiles:[6.0, 6.0, 7.0, 7.0, 11.0] LOG add_vertex! sp=73930 ep=73934 n=73929 BeamSearch BeamSearch(bsize=12, Δ=1.155, maxvisits=488) 2026-01-11T12:26:38.850 LOG n.size quantiles:[5.0, 5.0, 6.0, 7.0, 9.0] LOG add_vertex! sp=85580 ep=85584 n=85579 BeamSearch BeamSearch(bsize=8, Δ=1.1025, maxvisits=456) 2026-01-11T12:26:39.851 LOG n.size quantiles:[4.0, 5.0, 6.0, 7.0, 8.0] LOG add_vertex! sp=99280 ep=99284 n=99279 BeamSearch BeamSearch(bsize=8, Δ=1.1025, maxvisits=456) 2026-01-11T12:26:40.851 LOG n.size quantiles:[4.0, 5.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, 18.0, 23.0, 96.0] [ Info: minrecall: queries per second: 19201.269434324844, recall: 0.903 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=9, Δ=1.12, maxvisits=698)) 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, 18.0, 23.0, 96.0] [ Info: ===================== rebuild ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=16, Δ=1.155, maxvisits=538)), 1000, 8) [ Info: rebuild: queries per second: 22338.556959154106, recall: 0.9025 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=16, Δ=1.155, maxvisits=538)) 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, 31.0] [ Info: ===================== matrixhints ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=6, Δ=1.1287501, maxvisits=838)), 1000, 8) 1.137694 seconds (606.79 k allocations: 31.179 MiB, 95.94% compilation time) [ Info: matrixhints: queries per second: 22230.607113211834, recall: 0.903875 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=6, Δ=1.1287501, maxvisits=838)) 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, 18.0, 23.0, 96.0] 1.811270 seconds (1.00 k allocations: 140.711 KiB) SEARCH Exhaustive 1: 0.002060 seconds SEARCH Exhaustive 2: 0.001869 seconds SEARCH Exhaustive 3: 0.001803 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 BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2026-01-11T12:27:22.506 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] LOG add_vertex! sp=295 ep=299 n=294 BeamSearch BeamSearch(bsize=4, Δ=1.155, maxvisits=212) 2026-01-11T12:27:26.399 LOG n.size quantiles:[3.0, 4.0, 4.0, 6.0, 6.0] LOG add_vertex! sp=26585 ep=26589 n=26584 BeamSearch BeamSearch(bsize=16, Δ=1.155, maxvisits=462) 2026-01-11T12:27:27.399 LOG n.size quantiles:[4.0, 5.0, 7.0, 7.0, 9.0] LOG add_vertex! sp=46730 ep=46734 n=46729 BeamSearch BeamSearch(bsize=10, Δ=1.244447, maxvisits=510) 2026-01-11T12:27:28.400 LOG n.size quantiles:[5.0, 5.0, 6.0, 6.0, 7.0] LOG add_vertex! sp=62880 ep=62884 n=62879 BeamSearch BeamSearch(bsize=12, Δ=1.155, maxvisits=488) 2026-01-11T12:27:29.400 LOG n.size quantiles:[2.0, 6.0, 6.0, 8.0, 8.0] LOG add_vertex! sp=78295 ep=78299 n=78294 BeamSearch BeamSearch(bsize=12, Δ=1.155, maxvisits=488) 2026-01-11T12:27:30.400 LOG n.size quantiles:[4.0, 7.0, 7.0, 7.0, 8.0] LOG add_vertex! sp=86025 ep=86029 n=86024 BeamSearch BeamSearch(bsize=8, Δ=1.1025, maxvisits=456) 2026-01-11T12:27:31.400 LOG n.size quantiles:[4.0, 4.0, 6.0, 7.0, 7.0] LOG add_vertex! sp=99855 ep=99859 n=99854 BeamSearch BeamSearch(bsize=8, Δ=1.1025, maxvisits=456) 2026-01-11T12:27:32.400 LOG n.size quantiles:[6.0, 7.0, 8.0, 9.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, 13.0, 15.0, 18.0, 23.0, 96.0] [ Info: minrecall: queries per second: 21134.131463808066, recall: 0.903 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=9, Δ=1.12, maxvisits=698)) 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, 18.0, 23.0, 96.0] [ Info: ===================== rebuild ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=16, Δ=1.155, maxvisits=538)), 1000, 8) [ Info: rebuild: queries per second: 21072.41125322392, recall: 0.9025 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=16, Δ=1.155, maxvisits=538)) 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, 31.0] [ Info: ===================== matrixhints ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=6, Δ=1.1287501, maxvisits=838)), 1000, 8) 1.128800 seconds (562.98 k allocations: 29.022 MiB, 95.10% compilation time) [ Info: matrixhints: queries per second: 21325.45826810409, recall: 0.903875 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=6, Δ=1.1287501, maxvisits=838)) 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, 18.0, 23.0, 96.0] Test Summary: | Pass Total Time vector indexing with SearchGraph | 18 18 1m38.9s Testing SimilaritySearch tests passed Testing completed after 585.67s PkgEval succeeded after 629.99s