|
![](/i/fill.gif) |
I compiled povray for (Solaris) UltraSPARC with different architecture
options and tested its speed with four povray files. The files I used were:
- Parsing benchmark: A very complicated SDL which takes very long to parse
and just a few seconds to render. Requires some memory too.
- Rendering benchmark 1: A plane and 5 glass spheres.
- Rendering benchmark 2: 10000 spheres, each one with its own texture.
Parse time is just a few seconds.
- Rendering benchmark 3: An isosurface and an area light
(http://iki.fi/warp/pics/lftest1.jpg).
I rendered them in a Sun Ultra 5 and here are the results:
Parsing benchmark:
gcc: 6 min 10 sec
v8: 5 min 39 sec
v8plus: 5 min 37 sec
v8plusa: 5 min 25 sec
v9: 6 min 34 sec
v9a: 6 min 35 sec
Rendering benchmark 1:
gcc: 4 min 8 sec
v8: 3 min 50 sec
v8plus: 5 min 6 sec
v8plusa: 3 min 44 sec
v9: 4 min 8 sec
v9a: 4 min 57 sec
Rendering benchmark 2:
gcc: 4 min 8 sec
v8: 3 min 55 sec
v8plus: 4 min 0 sec
v8plusa: 3 min 40 sec
v9: 3 min 52 sec
v9a: 3 min 49 sec
Rendering benchmark 3:
gcc: 4 min 51 sec
v8: 4 min 51 sec
v8plus: 6 min 30 sec
v8plusa: 4 min 53 sec
v9: 5 min 40 sec
v9a: 5 min 31 sec
The v8plusa seems the winner.
I think that the v9 compiles are slower because it generates 64-bit code,
which is larger, stresses more the memory bus and overflows caches more
quickly and POV-Ray doesn't get any advantage of 64-bit code.
--
#macro N(D,I)#if(I<6)cylinder{M()#local D[I]=div(D[I],104);M().5,2pigment{
rgb M()}}N(D,(D[I]>99?I:I+1))#end#end#macro M()<mod(D[I],13)-6,mod(div(D[I
],13),8)-3,10>#end blob{N(array[6]{11117333955,
7382340,3358,3900569407,970,4254934330},0)}// - Warp -
Post a reply to this message
|
![](/i/fill.gif) |