POV-Ray : Newsgroups : povray.programming : LOW_RESOLUTION statistics broken Server Time
5 Jul 2024 16:09:03 EDT (-0400)
  LOW_RESOLUTION statistics broken (Message 1 to 5 of 5)  
From: Vadim Sytnikov
Subject: LOW_RESOLUTION statistics broken
Date: 8 Jan 2003 06:00:51
Message: <3e1c04e3@news.povray.org>
frame.h does not define Decrease_Counter(x) if COUNTER_RESOLUTION is
anything other than HIGH_RESOLUTION. In such a case, isosurf.cpp and
fpmetric.cpp do not compile.

AddStatistic() in povmsend.cpp tries to pass pointer to 'counter' to
SetPOVMSLong() whereas it should pass *counter... There is probably more
broken code; I do not know for sure since I just excluded all the
statistical computations for my custom compile (well, introduced the third
mode for the COUNTER_RESOLUTION, if more exactly).

BTW, I would love to have the compilation of all this statistical stuff
conditional in the official version as well; not too difficult, while being
useful for some applications.


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: LOW_RESOLUTION statistics broken
Date: 8 Jan 2003 07:11:05
Message: <3e1c1559@news.povray.org>
In article <3e1c04e3@news.povray.org> , "Vadim Sytnikov" <syt### [at] rucom>
wrote:

> frame.h does not define Decrease_Counter(x) if COUNTER_RESOLUTION is
> anything other than HIGH_RESOLUTION. In such a case, isosurf.cpp and
> fpmetric.cpp do not compile.
>
> AddStatistic() in povmsend.cpp tries to pass pointer to 'counter' to
> SetPOVMSLong() whereas it should pass *counter... There is probably more
> broken code; I do not know for sure since I just excluded all the
> statistical computations for my custom compile (well, introduced the third
> mode for the COUNTER_RESOLUTION, if more exactly).
>
> BTW, I would love to have the compilation of all this statistical stuff
> conditional in the official version as well; not too difficult, while being
> useful for some applications.

LOW_RESOLUTION is not supported in POV-Ray 3.5.  The outdated code will be
removed in the next source code release.

    Thorsten

____________________________________________________
Thorsten Froehlich
e-mail: mac### [at] povrayorg

I am a member of the POV-Ray Team.
Visit POV-Ray on the web: http://mac.povray.org


Post a reply to this message

From: Vadim Sytnikov
Subject: Re: LOW_RESOLUTION statistics broken
Date: 8 Jan 2003 07:30:31
Message: <3e1c19e7$1@news.povray.org>
"Thorsten Froehlich" <tho### [at] trfde> wrote
> LOW_RESOLUTION is not supported in POV-Ray 3.5.  The outdated code will be
> removed in the next source code release.

Thanks. Any chance of making the statistics' compilation conditional?


Post a reply to this message

From: Thorsten Froehlich
Subject: Re: LOW_RESOLUTION statistics broken
Date: 8 Jan 2003 07:43:59
Message: <3e1c1d0f@news.povray.org>
In article <3e1c19e7$1@news.povray.org> , "Vadim Sytnikov" <syt### [at] rucom>
wrote:

>> LOW_RESOLUTION is not supported in POV-Ray 3.5.  The outdated code will be
>> removed in the next source code release.
>
> Thanks. Any chance of making the statistics' compilation conditional?

No, sorry, too much depends on it to offere a general "disable all" switch.
However, if you think statistic counters in certain places cause too much
overhead, let me know and either conditional compilation for some can be
added or a better solution can be developed.

    Thorsten

____________________________________________________
Thorsten Froehlich, Duisburg, Germany
e-mail: tho### [at] trfde

Visit POV-Ray on the web: http://mac.povray.org


Post a reply to this message

From: Vadim Sytnikov
Subject: Re: LOW_RESOLUTION statistics broken
Date: 8 Jan 2003 08:05:22
Message: <3e1c2212$1@news.povray.org>
"Thorsten Froehlich" <tho### [at] trfde> wrote
> No, sorry, too much depends on it to offere a general "disable all"
switch.
> However, if you think statistic counters in certain places cause too much
> overhead, let me know and either conditional compilation for some can be
> added or a better solution can be developed.

The following code (compiled upon COUNTER_RESOLUTION==0) outlines what I
did:

#define DBL_Counter(x)       0.0 /* ( (DBL)(x) ) */
#define Long_To_Counter(i,x) i /* { (x) = i; } */
#define Init_Counter(x)      /* { (x) = 0L; } */
#define Increase_Counter(x)  /* { (x)++; } */
#define Test_Zero_Counter(x) 1 /* ((x) == 0L) */
#define Add_Counter(x, a, b) /* { (x) = (a) + (b); } */
#define Decrease_Counter(x)  /* was undefined for 32-bit counters */

There appeared to be some "divides by zero" (compile-time, *not*
execution-time errors) in Print_Stats() (statspov.cpp module), so I
conditionally switched off a bunch of code in that function as well. I do
understand that that may not be appropriate for an official version; but
other than that, there appeared no problems. I do think this would be useful
in render-farms and the likes; 64-bit counters on 32-bit architectures
introduce extra branches, which definitely do no good for Pentiums with
their pipelines...


Post a reply to this message

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