
Re: Mathematica 20x slower than Java at arithmetic/special functions, is
Posted:
Jan 24, 2011 5:22 AM


On a related topic, I have noticed that mathematica 7 evaluates integrals 3x slower than mathematica 5.
On Sun, Jan 23, 2011 at 2:33 PM, Leo Alekseyev <dnquark@gmail.com> wrote:
> I was playing around with JLink the other day, and noticed that Java > seems to outperform Mathematica by ~20x in an area where I'd expect > Mathematica to be rather well optimized  arithmetic involving special > functions. In my particular example, I am simply evaluating a sum of > Bessel functions. I understand that much depends on the underlying > implementation, but I just want to run this by Mathgroup to see if > this is to be expected, or maybe if I'm doing something suboptimal in > Mathematica. Here's the code that I'm running: > > grid1dc[x_, > y_] = (With[{d = 0.1, NN = 50}, > Sum[Re[N[ > d BesselJ[1, 2 Pi d Sqrt[m^2 + n^2]]/ > Sqrt[m^2 + n^2 + 10^7]] Exp[ > I 2.0 Pi (m x + n y)]], {m, NN, NN, 1}, {n, NN, NN, 1}]]) // > N > > and > > gridres1da = > With[{delta = 0.5, xlim = 2.5, ylim = 2.5}, > Table[{x, y, grid1dc[x, y]}, {x, xlim, xlim, delta}, {y, ylim, > ylim, delta}]] > > > Java implementation uses Colt and Apache common math libraries for the > Bessels and complex numbers, uses a double for loop, and consistently > runs 1520 times faster. > > Leo > >
  Michael B. Heaney 3182 Stelling Drive Palo Alto, CA 94303 USA mheaney@alum.mit.edu www.linkedin.com/in/michaelbheaney 

