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.


Reply via email to