Hi all, I'm sort of just starting out with Julia, I'm trying to get gauge of how fast I can make some code of which I have Cython and Fortran versions to see if I should continue down the path of converting more or my stuff to Julia (which in general I'd very much like to, if I can get it fast enough). I thought maybe I'd post the code in question here to see if I could get any tips. I've stripped down the original thing to what I think are the important parts, a nested integration with an inner function closure and some global variables.
module test const a = 1. function f(x) quadgk(y->1/g(y),0,x)[1] # <=== outer integral end function g(y) integrand(x) = x^2*sqrt(x^2*y^2+a)/(exp(sqrt(x^2+y^2))+a) quadgk(integrand,0,Inf)[1] # <=== inner integral end end > @timeit test.f(1.) 100 loops, best of 3: 3.10 ms per loop Does anyone have any tips that squeezes a little more out of this code? I have run ProfileView on it, and although I'm not sure I fully understand how to read its output, I think it's saying the majority of runtime is spent in quadgk itself. So perhaps I should look into using a different integration library? Thanks for any help.