Package evaluation to test SimilaritySearch on Julia 1.14.0-DEV.1352 (749bc618c5*) started at 2025-12-09T21:48:32.292 ################################################################################ # Set-up # Installing PkgEval dependencies (TestEnv)... Activating project at `~/.julia/environments/v1.14` Set-up completed after 9.79s ################################################################################ # Installation # Installing SimilaritySearch... Resolving package versions... 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.0 [92933f4c] + ProgressMeter v1.11.0 [ae029012] + Requires v1.3.1 [94e857df] + SIMDTypes v0.1.0 [431bcebd] + SciMLPublic v1.0.0 [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 4.08s ################################################################################ # 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:577 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:577 Precompilation failed after 13.55s ################################################################################ # Testing # Testing SimilaritySearch Status `/tmp/jl_hh093H/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_hh093H/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.0 [92933f4c] ProgressMeter v1.11.0 [ae029012] Requires v1.3.1 [94e857df] SIMDTypes v0.1.0 [431bcebd] SciMLPublic v1.0.0 [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.1+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 13.1s Test Summary: | Pass Total Time heap | 16 16 0.1s Test Summary: | Pass Total Time KnnHeap | 30005 30005 2.7s Test Summary: | Pass Total Time XKnn | 25005 25005 1.6s Test Summary: | Pass Total Time XKnn pop ops | 9603 9603 0.8s [ Info: (MatrixDatabase{Matrix{Float32}}, SubDatabase{MatrixDatabase{Matrix{Float32}}, Vector{Int64}}) 5.586351 seconds (1000 allocations: 78.125 KiB) 5.594752 seconds (1000 allocations: 78.125 KiB) 1.911838 seconds (1000 allocations: 78.125 KiB) 2.090994 seconds (1000 allocations: 78.125 KiB) 1.927563 seconds (1000 allocations: 78.125 KiB) 1.983707 seconds (1000 allocations: 78.125 KiB) 1.893622 seconds (1000 allocations: 78.125 KiB) 1.962244 seconds (1000 allocations: 78.125 KiB) 10.972808 seconds (1000 allocations: 78.125 KiB) 10.902871 seconds (1000 allocations: 78.125 KiB) 22.519892 seconds (1000 allocations: 78.125 KiB) 22.768792 seconds (1000 allocations: 78.125 KiB) 15.862681 seconds (6.23 k allocations: 358.125 KiB) 15.723657 seconds (1000 allocations: 78.125 KiB) 12.816681 seconds (1.00 k allocations: 78.141 KiB) 13.234038 seconds (1000 allocations: 78.125 KiB) Test Summary: | Pass Total Time indexing vectors with ExhaustiveSearch | 8000 8000 2m37.4s [ Info: (VectorDatabase{Vector{Vector{Int64}}}, SubDatabase{VectorDatabase{Vector{Vector{Int64}}}, Vector{Int64}}) 2.355291 seconds (1000 allocations: 78.125 KiB) 2.265293 seconds (1000 allocations: 78.125 KiB) 15.523109 seconds (1000 allocations: 78.125 KiB) 16.176289 seconds (1000 allocations: 78.125 KiB) 16.021050 seconds (1000 allocations: 78.125 KiB) 15.853815 seconds (1000 allocations: 78.125 KiB) 1.718407 seconds (1000 allocations: 78.125 KiB) 1.768898 seconds (1000 allocations: 78.125 KiB) Test Summary: | Pass Total Time indexing sequences with ExhaustiveSearch | 4000 4000 1m14.4s [ Info: (VectorDatabase{Vector{Vector{Int64}}}, SubDatabase{VectorDatabase{Vector{Vector{Int64}}}, Vector{Int64}}) 8.051308 seconds (1000 allocations: 78.125 KiB) 8.686561 seconds (1000 allocations: 78.125 KiB) 8.577884 seconds (1000 allocations: 78.125 KiB) 8.538215 seconds (1000 allocations: 78.125 KiB) 8.516151 seconds (1000 allocations: 78.125 KiB) 7.300927 seconds (1000 allocations: 78.125 KiB) Test Summary: | Pass Total Time indexing sets with ExhaustiveSearch | 3000 3000 52.1s 0.026205 seconds (1.00 k allocations: 78.141 KiB) 0.026512 seconds (1000 allocations: 78.125 KiB) 0.011790 seconds (1000 allocations: 78.125 KiB) 0.011509 seconds (1000 allocations: 78.125 KiB) Test Summary: | Pass Total Time Normalized Cosine and Normalized Angle distances | 2000 2000 1.4s 0.014562 seconds (1000 allocations: 78.125 KiB) 0.014700 seconds (1000 allocations: 78.125 KiB) Test Summary: | Pass Total Time Binary hamming distance | 1000 1000 0.7s ExhaustiveSearch allknn: 2.471544 seconds (2.38 M allocations: 128.391 MiB, 1.77% gc time, 99.97% compilation time) ParallelExhaustiveSearch allknn: 0.754251 seconds (611.41 k allocations: 30.714 MiB, 99.88% compilation time) Test Summary: | Pass Total Time allknn | 3 3 3.7s 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.5s [ Info: neardup> starting: 1:100, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:54:57.931 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2025-12-09T21:54:58.157 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) 2025-12-09T21:54:59.252 LOG n.size quantiles:[1.0, 1.0, 1.0, 1.0, 1.0] [ Info: neardup> finished current elements: 11, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:54:59.514 D.map = UInt32[0x00000001, 0x00000002, 0x00000003, 0x0000000b, 0x00000011, 0x00000028, 0x0000002f, 0x00000033, 0x00000047, 0x00000049, 0x00000064] D.nn = Int32[1, 2, 3, 3, 1, 1, 1, 2, 2, 3, 11, 11, 11, 11, 11, 2, 17, 3, 2, 17, 1, 2, 11, 1, 11, 17, 11, 11, 2, 1, 11, 11, 11, 17, 2, 2, 1, 1, 3, 40, 3, 3, 3, 11, 3, 3, 47, 40, 1, 47, 51, 11, 51, 11, 17, 11, 11, 40, 47, 40, 1, 2, 17, 1, 2, 17, 3, 51, 3, 17, 71, 11, 73, 11, 51, 47, 11, 2, 11, 47, 73, 11, 1, 51, 11, 11, 1, 71, 51, 11, 47, 17, 47, 47, 47, 1, 11, 2, 17, 100] D.dist = Float32[0.0, 0.0, 0.0, 0.07517862, 0.040691853, 0.026491225, 0.073874295, 0.03385067, 0.095611215, 0.079045355, 0.0, 0.03006512, 0.085256934, 0.036138713, 0.043707848, 0.03581798, 0.0, 0.03832835, 0.09013611, 0.044760585, 0.038924932, 0.033265114, 0.018326819, 0.08052081, 0.008515537, 0.074101865, 0.01292491, 0.03903836, 0.054103017, 0.045211136, 0.06384748, 0.045241237, 0.042042434, 0.02352631, 0.014873385, 0.03313142, 0.009901404, 0.039634347, 0.034889758, 0.0, 0.024784982, 0.033559084, 0.014644742, 0.012754917, 0.040731072, 0.033845127, 0.0, 0.07576078, 0.014333785, 0.027518034, 0.0, 0.024914384, 0.03356999, 0.010310233, 0.038571477, 0.028553605, 0.047046542, 0.031218886, 0.021620631, 0.020366788, 0.053927183, 0.029791653, 0.052921295, 0.05588019, 0.014225185, 0.04185891, 0.080919504, 0.06571764, 0.06716776, 0.03634894, 0.0, 0.037883222, 0.0, 0.010231435, 0.019754529, 0.050682545, 0.08011687, 0.049053192, 0.03519112, 0.01584202, 0.06368184, 0.021326184, 0.017301857, 0.04997468, 0.052423537, 0.08487445, 0.049649835, 0.047019362, 0.078213096, 0.001996696, 0.0372113, 0.004271865, 0.035113633, 0.053064227, 0.057398558, 0.08242041, 0.018896699, 0.095712066, 0.020378053, 0.0] Test Summary: | Pass Total Time neardup single block | 3 3 13.5s [ Info: neardup> starting: 1:16, current elements: 0, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.444 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2025-12-09T21:55:00.444 LOG n.size quantiles:[0.0, 0.0, 0.0, 0.0, 0.0] [ Info: neardup> range: 17:32, current elements: 4, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.445 [ Info: neardup> range: 33:48, current elements: 5, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.445 [ Info: neardup> range: 49:64, current elements: 7, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.445 [ Info: neardup> range: 65:80, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.445 [ Info: neardup> range: 81:96, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.445 [ Info: neardup> range: 97:100, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.445 [ Info: neardup> finished current elements: 11, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.445 D.map = UInt32[0x00000001, 0x00000002, 0x00000003, 0x0000000b, 0x00000011, 0x00000028, 0x0000002f, 0x00000033, 0x00000047, 0x00000049, 0x00000064] D.nn = Int32[1, 2, 3, 3, 1, 1, 1, 2, 2, 3, 11, 11, 11, 11, 11, 2, 17, 3, 2, 2, 1, 2, 11, 1, 11, 1, 11, 11, 2, 1, 11, 11, 11, 17, 2, 2, 1, 1, 3, 40, 3, 3, 3, 11, 3, 3, 47, 2, 1, 47, 51, 11, 11, 11, 17, 11, 11, 40, 47, 40, 1, 2, 17, 1, 2, 17, 3, 51, 3, 17, 71, 11, 73, 11, 51, 47, 11, 2, 11, 47, 73, 11, 1, 51, 11, 11, 1, 71, 51, 11, 47, 17, 47, 47, 47, 1, 11, 2, 17, 100] D.dist = Float32[0.0, 0.0, 0.0, 0.07517862, 0.040691853, 0.026491225, 0.073874295, 0.03385067, 0.095611215, 0.079045355, 0.0, 0.03006512, 0.085256934, 0.036138713, 0.043707848, 0.03581798, 0.0, 0.03832835, 0.09013611, 0.08285195, 0.038924932, 0.033265114, 0.018326819, 0.08052081, 0.008515537, 0.0797019, 0.01292491, 0.03903836, 0.054103017, 0.045211136, 0.06384748, 0.045241237, 0.042042434, 0.02352631, 0.014873385, 0.03313142, 0.009901404, 0.039634347, 0.034889758, 0.0, 0.024784982, 0.033559084, 0.014644742, 0.012754917, 0.040731072, 0.033845127, 0.0, 0.08977437, 0.014333785, 0.027518034, 0.0, 0.024914384, 0.08990699, 0.010310233, 0.038571477, 0.028553605, 0.047046542, 0.031218886, 0.021620631, 0.020366788, 0.053927183, 0.029791653, 0.052921295, 0.05588019, 0.014225185, 0.04185891, 0.080919504, 0.06571764, 0.06716776, 0.03634894, 0.0, 0.037883222, 0.0, 0.010231435, 0.019754529, 0.050682545, 0.08011687, 0.049053192, 0.03519112, 0.01584202, 0.06368184, 0.021326184, 0.017301857, 0.04997468, 0.052423537, 0.08487445, 0.049649835, 0.047019362, 0.078213096, 0.001996696, 0.0372113, 0.004271865, 0.035113633, 0.053064227, 0.057398558, 0.08242041, 0.018896699, 0.095712066, 0.020378053, 0.0] 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: 2025-12-09T21:55:00.522 LOG add_vertex! sp=1 ep=1 n=1 BeamSearch BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2025-12-09T21:55:00.523 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: 2025-12-09T21:55:00.524 [ Info: neardup> range: 33:48, current elements: 16, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.524 [ Info: neardup> range: 49:64, current elements: 16, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.524 [ Info: neardup> range: 65:80, current elements: 19, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.524 [ Info: neardup> range: 81:96, current elements: 19, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.524 [ Info: neardup> range: 97:100, current elements: 19, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.524 [ Info: neardup> finished current elements: 19, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:00.524 D.map = UInt32[0x00000001, 0x00000002, 0x00000003, 0x00000004, 0x00000005, 0x00000006, 0x00000007, 0x00000008, 0x00000009, 0x0000000a, 0x0000000b, 0x0000000c, 0x0000000d, 0x0000000e, 0x0000000f, 0x00000010, 0x00000033, 0x0000003a, 0x0000003b] D.nn = Int32[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 13, 14, 7, 13, 6, 16, 12, 5, 11, 6, 11, 9, 8, 1, 13, 14, 9, 12, 2, 2, 1, 1, 14, 16, 3, 15, 3, 12, 3, 3, 14, 16, 6, 14, 51, 14, 11, 12, 12, 10, 11, 58, 59, 16, 5, 2, 4, 7, 8, 4, 6, 51, 6, 4, 8, 14, 59, 11, 51, 58, 11, 2, 14, 14, 59, 11, 1, 51, 7, 11, 6, 8, 51, 11, 11, 13, 14, 7, 59, 6, 11, 16, 12, 58] 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.027313292, 0.02367884, 0.015578568, 0.0070518255, 0.026429296, 0.01950115, 0.01536715, 0.04579526, 0.008515537, 0.031178892, 0.01292491, 0.0067192316, 0.039675534, 0.045211136, 0.01803726, 0.0122874975, 0.0050182343, 0.027152479, 0.014873385, 0.03313142, 0.009901404, 0.039634347, 0.018335938, 0.053930998, 0.024784982, 0.033536017, 0.014644742, 0.012568951, 0.040731072, 0.033845127, 0.06874955, 0.06807089, 0.011045396, 0.0505507, 0.0, 0.0035383701, 0.08990699, 0.0077019334, 0.063860476, 0.0035540462, 0.047046542, 0.0, 0.0, 0.037164688, 0.0019828677, 0.029791653, 0.005298078, 0.03698677, 0.012186408, 0.01052779, 0.041737854, 0.06571764, 0.058463097, 0.012548149, 0.053429484, 0.017308652, 0.07251912, 0.010231435, 0.019754529, 0.056521714, 0.08011687, 0.049053192, 0.008818865, 0.054101408, 0.05011469, 0.021326184, 0.017301857, 0.04997468, 0.011460125, 0.08487445, 0.01787293, 0.015913188, 0.078213096, 0.001996696, 0.071395814, 0.021420002, 0.02948159, 0.04068792, 0.076833725, 0.050845623, 0.018896699, 0.08078027, 0.01951021, 0.026672065] 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: 2025-12-09T21:55:06.520 LOG append_items! ExhaustiveSearch{SimilaritySearch.DistanceWithIdentifiers{CosineDistance, MatrixDatabase{Matrix{Float32}}}, VectorDatabase{Vector{UInt32}}} sp=0 ep=4 n=4 2025-12-09T21:55:06.521 [ Info: neardup> range: 17:32, current elements: 4, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:06.526 [ Info: neardup> range: 33:48, current elements: 5, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:06.526 [ Info: neardup> range: 49:64, current elements: 7, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:06.526 [ Info: neardup> range: 65:80, current elements: 8, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:06.526 [ Info: neardup> range: 81:96, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:06.526 [ Info: neardup> range: 97:100, current elements: 10, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:06.526 [ Info: neardup> finished current elements: 11, n: 100, ϵ: 0.1, timestamp: 2025-12-09T21:55:06.526 D.map = UInt32[0x00000001, 0x00000002, 0x00000003, 0x0000000b, 0x00000011, 0x00000028, 0x0000002f, 0x00000033, 0x00000047, 0x00000049, 0x00000064] D.nn = Int32[1, 2, 3, 3, 1, 1, 1, 2, 2, 3, 11, 11, 11, 11, 11, 2, 17, 3, 2, 2, 1, 2, 11, 1, 11, 1, 11, 11, 2, 1, 11, 11, 11, 17, 2, 2, 1, 1, 3, 40, 3, 3, 3, 11, 3, 3, 47, 2, 1, 47, 51, 11, 11, 11, 17, 11, 11, 40, 47, 40, 1, 2, 17, 1, 2, 17, 3, 51, 3, 17, 71, 11, 73, 11, 51, 47, 11, 2, 11, 47, 73, 11, 1, 51, 11, 11, 1, 71, 51, 11, 47, 17, 47, 47, 47, 1, 11, 2, 17, 100] D.dist = Float32[0.0, 0.0, 0.0, 0.07517862, 0.040691853, 0.026491225, 0.073874295, 0.03385067, 0.095611215, 0.079045355, 0.0, 0.03006512, 0.085256934, 0.036138713, 0.043707848, 0.03581798, 0.0, 0.03832835, 0.09013611, 0.08285195, 0.038924932, 0.033265114, 0.018326819, 0.08052081, 0.008515537, 0.0797019, 0.01292491, 0.03903836, 0.054103017, 0.045211136, 0.06384748, 0.045241237, 0.042042434, 0.02352631, 0.014873385, 0.03313142, 0.009901404, 0.039634347, 0.034889758, 0.0, 0.024784982, 0.033559084, 0.014644742, 0.012754917, 0.040731072, 0.033845127, 0.0, 0.08977437, 0.014333785, 0.027518034, 0.0, 0.024914384, 0.08990699, 0.010310233, 0.038571477, 0.028553605, 0.047046542, 0.031218886, 0.021620631, 0.020366788, 0.053927183, 0.029791653, 0.052921295, 0.05588019, 0.014225185, 0.04185891, 0.080919504, 0.06571764, 0.06716776, 0.03634894, 0.0, 0.037883222, 0.0, 0.010231435, 0.019754529, 0.050682545, 0.08011687, 0.049053192, 0.03519112, 0.01584202, 0.06368184, 0.021326184, 0.017301857, 0.04997468, 0.052423537, 0.08487445, 0.049649835, 0.047019362, 0.078213096, 0.001996696, 0.0372113, 0.004271865, 0.035113633, 0.053064227, 0.057398558, 0.08242041, 0.018896699, 0.095712066, 0.020378053, 0.0] Test Summary: | Pass Total Time neardup small block with filterblocks=false | 3 3 6.0s computing farthest point 1, dmax: Inf, imax: 21, n: 30 computing farthest point 2, dmax: 1.2085934, imax: 13, n: 30 computing farthest point 3, dmax: 0.92362475, imax: 16, n: 30 computing farthest point 4, dmax: 0.91511023, imax: 29, n: 30 computing farthest point 5, dmax: 0.7412946, imax: 24, n: 30 computing farthest point 6, dmax: 0.6213406, imax: 25, n: 30 computing farthest point 7, dmax: 0.5552098, imax: 6, n: 30 computing farthest point 8, dmax: 0.4936329, imax: 4, n: 30 computing farthest point 9, dmax: 0.48505408, imax: 18, n: 30 computing farthest point 10, dmax: 0.44759244, imax: 8, n: 30 Test Summary: | Pass Total Time farthest first traversal | 3 3 1.2s Test Summary: | Pass Total Time AdjacencyList | 15 15 1.5s LOG add_vertex! sp=1 ep=1 n=1 BeamSearch BeamSearch(bsize=4, Δ=1.0, maxvisits=1000000) 2025-12-09T21:55:12.334 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.8163265, maxvisits=110) 2025-12-09T21:55:20.461 LOG n.size quantiles:[4.0, 4.0, 4.0, 4.0, 5.0] (i, j, d) = (14, 427, -1.1920929f-7) (i, j, d, :parallel) = (14, 427, -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 => 13.101548912, :exact => 0.835606518) Test Summary: | Pass Total Time closestpair | 4 4 14.5s 1.335099 seconds (1.00 k allocations: 140.711 KiB) SEARCH Exhaustive 1: 0.000954 seconds SEARCH Exhaustive 2: 0.000955 seconds SEARCH Exhaustive 3: 0.000965 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) 2025-12-09T21:55:34.519 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=11, Δ=1.3370568, maxvisits=216) 2025-12-09T21:55:38.253 LOG n.size quantiles:[2.0, 3.0, 4.0, 4.0, 5.0] LOG add_vertex! sp=28655 ep=28659 n=28654 BeamSearch BeamSearch(bsize=12, Δ=1.1, maxvisits=428) 2025-12-09T21:55:39.253 LOG n.size quantiles:[4.0, 5.0, 6.0, 7.0, 8.0] LOG add_vertex! sp=48545 ep=48549 n=48544 BeamSearch BeamSearch(bsize=10, Δ=1.05, maxvisits=436) 2025-12-09T21:55:40.253 LOG n.size quantiles:[5.0, 5.0, 5.0, 7.0, 8.0] LOG add_vertex! sp=64360 ep=64364 n=64359 BeamSearch BeamSearch(bsize=4, Δ=1.21275, maxvisits=528) 2025-12-09T21:55:41.253 LOG n.size quantiles:[4.0, 6.0, 6.0, 8.0, 9.0] LOG add_vertex! sp=79330 ep=79334 n=79329 BeamSearch BeamSearch(bsize=4, Δ=1.21275, maxvisits=528) 2025-12-09T21:55:42.254 LOG n.size quantiles:[2.0, 5.0, 6.0, 7.0, 8.0] LOG add_vertex! sp=93095 ep=93099 n=93094 BeamSearch BeamSearch(bsize=12, Δ=0.95, maxvisits=390) 2025-12-09T21:55:43.254 LOG n.size quantiles:[2.0, 5.0, 6.0, 6.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, 88.0] [ Info: minrecall: queries per second: 19306.049457928602, recall: 0.901 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=16, Δ=1.1287501, maxvisits=704)) 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, 88.0] [ Info: ===================== rebuild ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=13, Δ=1.1851876, maxvisits=590)), 1000, 8) [ Info: rebuild: queries per second: 23714.003239854548, recall: 0.91025 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=13, Δ=1.1851876, maxvisits=590)) 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=11, Δ=1.157625, maxvisits=776)), 1000, 8) 1.139315 seconds (606.63 k allocations: 31.172 MiB, 5.69% gc time, 96.46% compilation time) [ Info: matrixhints: queries per second: 23423.97466762727, recall: 0.906375 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=11, Δ=1.157625, maxvisits=776)) quantile(neighbors_length.(Ref(graph.adj), 1:length(graph)), 0:0.1:1.0) = [1.0, 6.0, 8.0, 9.0, 10.0, 11.0, 13.0, 15.0, 18.0, 23.0, 88.0] 1.290591 seconds (1.00 k allocations: 140.711 KiB) SEARCH Exhaustive 1: 0.000992 seconds SEARCH Exhaustive 2: 0.000866 seconds SEARCH Exhaustive 3: 0.000901 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) 2025-12-09T21:56:21.678 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=11, Δ=1.3370568, maxvisits=216) 2025-12-09T21:56:24.529 LOG n.size quantiles:[2.0, 3.0, 4.0, 4.0, 5.0] LOG add_vertex! sp=37400 ep=37404 n=37399 BeamSearch BeamSearch(bsize=12, Δ=1.1, maxvisits=428) 2025-12-09T21:56:25.529 LOG n.size quantiles:[3.0, 6.0, 7.0, 9.0, 11.0] LOG add_vertex! sp=56360 ep=56364 n=56359 BeamSearch BeamSearch(bsize=10, Δ=1.05, maxvisits=436) 2025-12-09T21:56:26.530 LOG n.size quantiles:[5.0, 5.0, 7.0, 8.0, 8.0] LOG add_vertex! sp=70850 ep=70854 n=70849 BeamSearch BeamSearch(bsize=4, Δ=1.21275, maxvisits=528) 2025-12-09T21:56:27.530 LOG n.size quantiles:[5.0, 5.0, 5.0, 6.0, 7.0] LOG add_vertex! sp=85225 ep=85229 n=85224 BeamSearch BeamSearch(bsize=12, Δ=0.95, maxvisits=390) 2025-12-09T21:56:28.596 LOG n.size quantiles:[3.0, 5.0, 7.0, 7.0, 7.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, 88.0] [ Info: minrecall: queries per second: 21030.122264293914, recall: 0.901 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=16, Δ=1.1287501, maxvisits=704)) 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, 88.0] [ Info: ===================== rebuild ============================== (graph.algo, length(B.queries), B.ksearch) = (Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=13, Δ=1.1851876, maxvisits=590)), 1000, 8) [ Info: rebuild: queries per second: 22531.15032923193, recall: 0.91025 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=13, Δ=1.1851876, maxvisits=590)) 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=11, Δ=1.157625, maxvisits=776)), 1000, 8) 1.110141 seconds (562.82 k allocations: 28.979 MiB, 95.51% compilation time) [ Info: matrixhints: queries per second: 20371.129798544396, recall: 0.906375 graph.algo = Base.RefValue{BeamSearch}(BeamSearch BeamSearch(bsize=11, Δ=1.157625, maxvisits=776)) quantile(neighbors_length.(Ref(graph.adj), 1:length(graph)), 0:0.1:1.0) = [1.0, 6.0, 8.0, 9.0, 10.0, 11.0, 13.0, 15.0, 18.0, 23.0, 88.0] Test Summary: | Pass Total Time vector indexing with SearchGraph | 18 18 1m32.3s Testing SimilaritySearch tests passed Testing completed after 473.4s PkgEval succeeded after 513.84s