Re: path tracing benchmark

2011-08-10 Thread Jacob Carlborg
On 2011-08-09 22:04, bearophile wrote: Christian Kamm: bearophile, just out of interest, what's the performance like if you ran ldmd -O3 -release -inline smallpt2_d.d ? I don't remember what ldmd is. Without LTO the performance of the LDC compile was a bit lower than the G++ compile. ldmd

Re: path tracing benchmark

2011-08-10 Thread Trass3r
If I compile it with with LDC1 with Link Time Optimization + Interning: ldc -O3 -release -inline -output-bc smallpt2_d.d opt -std-compile-opts smallpt2_d.bc smallpt2_do.bc llvm-ld -native -ltango-base-ldc -ltango-user-ldc -ldl -lm -lpthread -internalize-public-api-list=_Dmain -o=smallpt2_do

Re: path tracing benchmark

2011-08-10 Thread bearophile
Trass3r: Is there a more convenient way to get LTO with LDC? This is the best/only one I have found for LDC1. Feel free to search for something better/shorter (and tell me if you find it, please). Bye, bearophile

Re: path tracing benchmark

2011-08-10 Thread Trass3r
Am 10.08.2011, 14:54 Uhr, schrieb bearophile bearophileh...@lycos.com: Trass3r: Is there a more convenient way to get LTO with LDC? This is the best/only one I have found for LDC1. Feel free to search for something better/shorter (and tell me if you find it, please). Well, obviously you

Re: path tracing benchmark

2011-08-10 Thread Trass3r
LDC does have -O4 and -O5 switches but they probably don't work?! Had a quick look at the source, no indications that -O4 and O5 do anything more than -O3.

Re: path tracing benchmark

2011-08-10 Thread Robert Clipsham
On 10/08/2011 14:49, Trass3r wrote: LDC does have -O4 and -O5 switches but they probably don't work?! Had a quick look at the source, no indications that -O4 and O5 do anything more than -O3. They don't, there's no way to do LTO built into LDC. I seem to recall some conversation about

Re: path tracing benchmark

2011-08-10 Thread Robert Clipsham
On 10/08/2011 17:43, Trass3r wrote: Am 10.08.2011, 18:16 Uhr, schrieb Robert Clipsham rob...@octarineparrot.com: On 10/08/2011 14:49, Trass3r wrote: Had a quick look at the source, no indications that -O4 and O5 do anything more than -O3. They don't, there's no way to do LTO built into LDC.

Re: path tracing benchmark

2011-08-09 Thread Christian Kamm
bearophile wrote: Trass3r: I ported smallpt to D some time ago and now that I've working versions of LDC2 and GDC2 I did a quick comparison: I have converted to D many of the commonly found benchmarks, this is my version: http://codepad.org/ZbmSfseY If I compile it with with LDC1 with

Re: path tracing benchmark

2011-08-09 Thread bearophile
Christian Kamm: bearophile, just out of interest, what's the performance like if you ran ldmd -O3 -release -inline smallpt2_d.d ? I don't remember what ldmd is. Without LTO the performance of the LDC compile was a bit lower than the G++ compile. And why would internalizing _Dmain have a

Re: path tracing benchmark

2011-08-08 Thread %u
This is off topic but if you're interested you can get it to run using float if you change the Sphere code to: FP eps = 1e-2; instead of 1e-4;

path tracing benchmark

2011-08-07 Thread Trass3r
I ported smallpt to D some time ago and now that I've working versions of LDC2 and GDC2 I did a quick comparison: Original code: http://kevinbeason.com/smallpt/explicit.cpp D version: https://bitbucket.org/trass3r/smallptd/src C++ -- g++ -O3 explicit.cpp: Rendering (4 spp) 100.00% real

Re: path tracing benchmark

2011-08-07 Thread bearophile
Trass3r: I ported smallpt to D some time ago and now that I've working versions of LDC2 and GDC2 I did a quick comparison: I have converted to D many of the commonly found benchmarks, this is my version: http://codepad.org/ZbmSfseY If I compile it with with LDC1 with Link Time Optimization