On Thu, 2014-09-04 at 14:37 -0400, Michael Goulish wrote: > A little confirmation -- > > in my testing of proton engine send/receive clients > I just now tested the performance of those clients built against Proton > Release version, versus Proton RelWithDebInfo version. > > I did indeed find that both versions were the same at running my tests, > after averaging the speed of 5 tests with each version. > > In fact, RelWithDebInfo came in a mite faster -- a couple percent -- > but probably still within the variability of the observations. >
For gcc: CMakeCache.txt:123:CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG CMakeCache.txt:126:CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG So the only differences are debug symbols (-g) and the extra optimizations in -O3: gcc -c -Q -O3 --help=optimizers > /tmp/O3-opts; gcc -c -Q -O2 --help=optimizers > /tmp/O2-opts; diff /tmp/O2-opts /tmp/O3-opts | grep enabled > -fgcse-after-reload [enabled] > -finline-functions [enabled] > -fipa-cp-clone [enabled] > -fpredictive-commoning [enabled] > -ftree-loop-distribute-patterns [enabled] > -ftree-partial-pre [enabled] > -ftree-vectorize [enabled] > -funswitch-loops [enabled] > -fvect-cost-model [enabled] I'm not sure what any of those do except for -finline-functions which is self-explanatory.
