Hi,

I have spotted a performance problem after I have upgraded from 1.15 to
1.16.

When I use odeiv2 to obtain numerical solutions from simulations, I found
that the program gets significantly slowed down by more than 10 times.

After a brief investigation, I found that it should be caused by the
amendment by Tuomo Keskitalo (see
http://bzr.savannah.gnu.org/lh/gsl/trunk/revision/4771).  In which, he
proposed that copying from dydt_out to dydt_in can save cpu time.  However,
I think, in many situations, memcpy is not a good choice.

To test my guess, I have tried to undo his amendment to see if it is the
cause.  I found that the performance becomes the same as before after my
modification.

Running time:
1.16 (original): 2m12s
1.16 (modified): 12s

compiler: gcc4.8.1
os: kubuntu 13.10

I am not the only guy who have this performance problem (see
http://comments.gmane.org/gmane.comp.lib.gsl.general/4418).  I guess
Keskitalo's idea may be beneficial for some projects, but not all.  I would
like to propose that, the revision 4771 should be undone.

Thanks for your attention.

Alan

Reply via email to