francesco biscani <bluesca...@gmail.com> writes:

> I'm experiencing a strange behaviour with GCC 4.4.1. Basically I have
> some C++ mathematical code which gets a ~x2 performance drop if I
> *remove* the following debug line from the code:


This message is not appropriate for the mailing list g...@gcc.gnu.org.
It is appropriate for gcc-h...@gcc.gnu.org.  Please take any followups
to gcc-help.  Thanks.


In my experience, a performance drop in a tight loop when you remove a
line of code means that your loop is extremely sensitive to cache line
boundaries.  It can be difficult to find the optimal code other than
by testing various command line options.  Options to particularly test
are -falign-loops, -falign-labels, and -falign-jumps.

Also, be sure that you are using a -mtune option appropriate for the
processor on which you are running.  E.g., you mention Core2, so you
should be using -mtune=core2.

You may also get some benefit from the micro-architectural optimizer
at http://code.google.com/p/mao, but note that that is not part of
gcc, and it is still under development.

Ian

Reply via email to