Python w/ numba and Julia are comparable in speed for the tests I did. This is not surprising as numba utilizes LLVM as well. For the above example and on my Unix computer, the timings are 15 ms for Python+numba and 20 ms for Julia.
If one gets the data as 1000x3 matrix, should one really first transpose the matrix and then apply a distance function on 3x1000? I don't think so. On Sunday, September 21, 2014 10:52:43 PM UTC+2, Jason Merrill wrote: > > On Saturday, September 20, 2014 10:45:31 AM UTC-7, stone...@gmail.com > wrote: >> >> Hi Jason, >> >> Could it be possible for you to create a Julia program to compare it with >> the famous Jake Vanderplas post ? >> http://jakevdp.github.io/blog/2013/06/15/numba-vs-cython-take-2/ >> >> Under which type of problem Julia fly much higher or easily than >> cython/pypy/numba ? >> ("much" = x3 in my mind) >> > > You should just try it. `pairwise_python` from that post can be translated > to Julia quite literally. I didn't succeed in installing numba in my first > 5 minutes of trying, so I can't really report on comparative performance, > but I can tell you that the Julia version's execution time is measured in > ms, and the pure python version's execution time is measured in seconds. > > BTW, I think in Julia it might be better to represent the points as a > 3x1000 array instead of a 1000x3 array, since you want the point > coordinates to be stored next to each other in memory for this algorithm. > > See also "pairwise" from the Distances.jl package. >