[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-gsl] Re: C/C++ speed optimization bible/resources/pointers nee

From: Jochen Küpper
Subject: Re: [Help-gsl] Re: C/C++ speed optimization bible/resources/pointers needed, and about using GSL...
Date: Fri, 27 Jul 2007 13:51:57 +0200



Using floats instead of doubles can lead to quite significant performance differences.

On you Pentium 3, not the average number cruncher these days.
A Opteron or any of the modern Intel CPUs would be more appropriate.


ICC 9.1 on x86-64 still makes my code run on the order of 4.5x faster than GCC's best efforts.

Maybe its due to your code?

If you can provide an example of GCC being faster on anything like this order of magnitude, please do.

That is a fair request. Let's see what we get...


Yes, ICC v10 is quite badly broken. It doesn't vectorize a lot of code than 9.1 vectorizes, and it produces broken code in certain cases. Have a look on Intel's Software Community forum for more details. I don't use it at the moment.

The nice thing about GCC is actually its robustness and availability on many platforms. Generally speaking it is nice to have options: i.e., to choose between icc and GCC on x86 CPUs. I would appreciate it, however, if Intel would put simply some efforts into optimizing GCC for ix86. But they pay, therefore, they decide.

Don't get me wrong, I'm not knocking GCC. I'm just a little disappointed that 10 years after SSE was introduced we still don't have a vectorizer to make use of it. That's a long time.

Maybe Intel should have implemented that in GGCC by now to give their CPUs an advantage over others?

GSL seems to descend the solution on my problem in fewer iterations. But even though my library is doing 2-3 times more iterations, it goes about 2x as fast. Mind you, the algorithms are different. GSL uses gradient descent via partial derivatives, whereas I do a sampled annealed steepest descent with caching (less sensitive to local minima on a jagged errorscape).

Why don't you then provide your improvements to GSL codes back to the project? (I can see many reasons, but some general improvements seem to be easily within your reach. We would all appreciate it!)

The biggest problem with icc is that it in not free. Neither free as in "free speech", nor, as in "free beer". You have to pay for it! Unless, you are coding for the fun of it; but then, mostly, speed is not a terrible issue.

Just my 2ct.

Einigkeit und Recht und Freiheit http://www.Jochen-
    Liberté, Égalité, Fraternité                GnuPG key: CC1B0B4D
        Sex, drugs and rock-n-roll

Attachment: PGP.sig
Description: This is a digitally signed message part

reply via email to

[Prev in Thread] Current Thread [Next in Thread]