Kristoffer Carlsson
Kristoffer Carlsson
https://github.com/KristofferC/NearestNeighbors.jl/pull/146 fixes the error so that there is no memory unsafety. It now errors with ``` julia> nn(tree, rand(2), x->true) ERROR: BoundsError: attempt to access 0-element Vector{Int64} at index [1]...
Clearly, something is going bananas somewhere. I think this just has to be honestly debugged with print statements and whatnot to find out where things go bad.
On hold until Base threading is better.
I don't have a plan by myself but I can see ways by which parallelization could move forward. I am only talking about shared memory here. ## Threaded building of...
We can't really fix this completely when the input is a matrix because we specialize on the dimension if the points. If the input was a vector of static vectors...
Right now, the staticness of trees is used quite extensively for performance optimizations. I think that dynamic tress would require a whole new approach to the data structures used, so...
Materializing the transpose is likely much better for performance since that keeps the coordinates of a point close in memory.
See https://github.com/KristofferC/NearestNeighbors.jl/issues/13, there was some work towards it at https://github.com/KristofferC/NearestNeighbors.jl/pull/14.
The key point in the docs is: > or it can be a `Vector{V}` where `V` is itself a subtype of an `AbstractVector` and such that `eltype(V)` and `length(V)` is...
> But that should be true for a vector of vectors, right? No? The error message told you that it wasn't.