On Saturday, 13 February 2016 at 21:10:11 UTC, Adam D. Ruppe
wrote:
On Saturday, 13 February 2016 at 20:45:41 UTC, David Nadlinger
wrote:
Your scripts had bounds checking enabled for LDC but not the
other two D compilers.
I strongly recommend people to always keep bounds checking
enabled in real world programs because it is so useful in
keeping programs sane. Specific parts of the code might disable
it via `.ptr`, but the command line switch is dangerous and I
can't recommend anyone to use it... ever.
We should run benchmarks with bounds checking enabled to better
reflect real world results. Yes, it might "lose" to C, but
we'll be the ones laughing when the C program crashes with yet
another buffer overrun or when it's milliseconds in execution
time lead to days of debug time and a multi-million dollar
business loss when an unchecked pointer leads to a security
breech.
Hi Adam, I'll check the influence of enabled bounds check on
benchmark result. Did not try this before.
Nevertheless, I have to admit I'm still on the dark side.
Benchmark has some algorithms related to raytracing techniques
and in this area I can't resist temptation to max performance at
any cost.