Would you trade 0.1% in performance for a better debugging experience?

Rainer Schuetze via Digitalmars-d digitalmars-d at puremagic.com
Wed Nov 19 14:45:14 PST 2014



On 18.11.2014 00:14, Vladimir Panteleev wrote:
> I proposed to build Phobos and Druntime with stack frames enabled:
>
[...]
> Personally, I think the 0.1% is practically negligible considering the
> advantages. My proposal was rejected, so I'd like to hear more opinions
> about this. What do you think?
>

I'm in favor of this change, but wanted to test the effect myself. I ran 
the druntime/benchmark tests with and without the -gs option. These 
tests mostly exercise the GC and dynamic and associative array 
implementations. Please note that I'm running a mobile i7 and benchmarks 
can vary quite a bit (average and standard deviation of 5 runs):

Win32 master:     33.8s +- 0.5s
Win32 master -gs: 35.8s +- 0.6s
=>                +5.9%

Being slighlty shocked by the difference, I reran the tests, but without 
a significant different result. Can someone else reproduce this difference?

On Win64 the tests need quite a bit more memory so they get slower, but 
the difference is a lot less:

Win64 master:     46.1s +- 0.8s
Win64 master -gs: 46.3s +- 0.4s
=>                +0.4%

This can be compensated with tiny optimizations, e.g. 
https://github.com/D-Programming-Language/druntime/pull/1027, which are 
lurking everywhere.


More information about the Digitalmars-d mailing list