On Feb 14, 2013, at 5:49 PM, Petr Bena <[email protected]> wrote:

> I wouldn't be so sure, this apply to non-optimized code, but if you enable 
> optimizations in your compiler together with debug symbols producing, some 
> optimizations may need to be disabled, which may result even in worse 
> performance. <ref> 1 </ref>

No - they're separate. We don't disable optimizization of code. Usually that 
means some debug symbols are not available because stuff is optimized out - too 
bad. Debug symbols are still tremendously useful for the rest.

> But I don't really know how much is maria db depending on compiler 
> optimizations so maybe this indeed is not a big problem. But from my own 
> experience replacing debug build with optimized build has a significant 
> performance improvements.
> 
> [1] - 
> http://stackoverflow.com/questions/2880025/why-do-debug-symbols-so-adversely-affect-the-performance-of-threaded-application
> don't be confused by the wrongly asked question - the guy indeed had main 
> problems because of profiling but if you read the table it say:
> 
> Optimized no threading:        0m4.864s
> Optimized threading:           0m2.075s
> 
> Debug no threading (no-pg):    0m10.428s
> Debug threading (no-pg):       0m4.045s
> 
> 
> that means it cause performance issues even when profiling is disabled.

That looks like -O0 vs -O3, which is different from enabling debug symbols or 
not.

-- 
Mark Bergsma <[email protected]>
Lead Operations Architect
Wikimedia Foundation





_______________________________________________
Labs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/labs-l

Reply via email to