POV-Ray : Newsgroups : povray.beta-test : parametric slowness Server Time
31 Jul 2024 08:25:11 EDT (-0400)
  parametric slowness (Message 1 to 2 of 2)  
From: Mike Williams
Subject: parametric slowness
Date: 8 Sep 2001 11:23:43
Message: <0Ty2ZJAW6hm7EwyI@econym.demon.co.uk>
I've been noticing that it takes v3.5b1 up to 58 times as long as
MegaPOV 0.6 to render the same parametric object. The speed difference
is more extreme in more complex scenes. In the simple scene below,
MegaPOV is only 17 times faster.

I've been converting the scenes for my Isosurface Tutorial web page, and
this is a simplified version of one of them. MegaPOV 0.6 renders the
unconverted scene in 25 seconds, v3.5b1 takes 444 seconds to produce an
identical image. (320x240 No AA in both cases)

I know I can speed it up by a factor of 3 by adding a suitable
precompute, but the magnitude of the speed difference, and the fact that
3.5b1 tends to be faster in other areas, suggests to me that there may
well be a performance bug in the parametric code somewhere.


POV 3.5b1, Windows 98se, AMD K6-2 500, 128 Mb


camera { location  <2, 2, -8> look_at <0, 0, 0> angle 30}

light_source {<100,200,-100> colour rgb 1}

parametric {
  function {sin(u)}
  function {cos(u)}
  function {v}
      <0,-2>,<2*pi,2>
  contained_by{ box {<-2,-2,-2>,<2,2,2>}}
  pigment {rgb 0.9}
}

=======
// MegaPOV version of the same scene

#version unofficial MegaPov 0.6;

camera { location  <2, 2, -8> look_at <0, 0, 0> angle 30}

light_source {<100,200,-100> colour rgb 1}

parametric {
  function sin(u), cos(u), v
      <0,-2>,<2*pi,2>
      <-2,-2,-2>,<2,2,2>
  pigment {rgb 0.9}
}

-- 
Mike Williams
Gentleman of Leisure


Post a reply to this message

From: Ron Parker
Subject: Re: parametric slowness
Date: 9 Sep 2001 23:33:02
Message: <slrn9pod3d.gv.ron.parker@fwi.com>
On Sat, 8 Sep 2001 14:35:18 +0100, Mike Williams wrote:
>
>I've been noticing that it takes v3.5b1 up to 58 times as long as
>MegaPOV 0.6 to render the same parametric object. The speed difference
>is more extreme in more complex scenes. In the simple scene below,
>MegaPOV is only 17 times faster.

Parametric is supposed to be marked as experimental in this version.  We're
still working out some kinks in it.  It will probably never be as fast as
MegaPOV's parametric, because with the addition of the pseudocode engine
that runs functions so much faster, we had to kill all of the old interval
arithmetic stuff that parametric counted on.  Perhaps someday this will
be better, but for now it's about as good as it's gonna get.  It may be 
worth just pretending parametrics don't exist in this version. :(

-- 
#macro R(L P)sphere{L F}cylinder{L P F}#end#macro P(V)merge{R(z+a z)R(-z a-z)R(a
-z-z-z a+z)torus{1F clipped_by{plane{a 0}}}translate V}#end#macro Z(a F T)merge{
P(z+a)P(z-a)R(-z-z-x a)pigment{rgbf 1}hollow interior{media{emission 3-T}}}#end 
Z(-x-x.2x)camera{location z*-10rotate x*90normal{bumps.02scale.05}}


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.