On Mon, Dec 01, 2008 at 08:49:29PM +0000, Joe Aston wrote:
Has anyone done any testing on the optimum GCC compiler flags for compiling
Nginx?
I usually use "-O3 -march=core2 -msse -mmmx -msse2 -msse3 -mfpmath=sse
-fomit-frame-pointer", but would it be worthwhile using "-funroll-loops" or
other options? Would "-O2" be better?
As it was said there is no noticeable difference between -O and -O2
for nginx. I believe -funroll-loops is useless for nginx: nginx has no
long loops to unroll. For the same reason mmx/sse is useless too:
I saw that Intel C compiler uses them in some loops, but all of them
are short and run once on re/configuration phase only.
-fomit-frame-pointer is single usefull option, but I do not use it usually
as it makes almost impossible to investigate core dumps.
Has anyone compiled Nginx with the Intel C/C++ Compiler? If so, what
settings did you use?
nginx has support for Intel C/C++ Compiler.
It runs with "-O -Ob2 -ip" options.