POV-Ray : Newsgroups : povray.programming : Speeding up Povray's Renderings from a Linux Command Line : Re: Speeding up Povray's Renderings from a Linux Command Line Server Time
19 Apr 2024 02:25:57 EDT (-0400)
  Re: Speeding up Povray's Renderings from a Linux Command Line  
From: Le Forgeron
Date: 1 Aug 2014 01:51:26
Message: <53db2ade$1@news.povray.org>
On 01/08/2014 06:37, Adam Ryan wrote:
> Hello, first I'd like to say thanks to everyone involved in the awesome product.
> I'm currently on Linux CentOS 6.4 and I'm using Povray version 3.7 from the
> command line. I have a few questions about trying to speed up the rendering
> times of Povray. I've read everything I can find relating to these questions, as
> well as the FAQ.
> 
> 
> 1. Can i build Povray excluding specific modules? For example if I knew I would
> never need ray tracing, can I remove it?

Povray is about ray tracing. I can translate the question to removing
sphere objects.

>     2. If I can remove specific modules, how is this done? Are there
> specific/extra parameters to use durning the build process to exclude modules?
> Or does it have to be done manually by deleting code before the build process?
>     3. If I can remove specific modules, would this make rendering faster?
> Although I could only really see this being a benefit when opening Povray, but
> I'd like to explore all available options. Also, if this would have to be done
> manually then I'd imagine it would be an absolute nightmare...

Unused code does not slow down current architectures, unless you are
short of memory.

If you want faster render, you can tune the quality (-Qx, x from 1 to 9).

> 
> 
> 4. Is there anyway for Povray to log each step of a rendering to see a breakdown
> of which part took the longest/most resources to complete?

It already reports the parsing/.../render stage. I'm afraid the
histogram output is lost in history.

> 
> 
> 5. According to
> http://wiki.Povray.org/content/Knowledgebase:Language_Questions_and_Tips#Topic_28
> "The new POV-Ray 3.7 supports multiple processors." Does this mean that for
> every single rendering every processor is being taken advantage of for specific
> parts for that overall rendering, in turn compleating that rendering faster? Or
> is this just beneficial when performing multiple rendering so that they happen
> in parallel with one to each processor?

If you have 4 cores with hyperthreading available, povray will use the 8
threads (unless overruled with -WTx option, x being the number of thread
to use) to render (and some additional threads for house-keeping).
The sad thing is that an HT core is worth about 1.23 core, not 2, when
povray is concerned.

> 
> 
> 6. This question may be geared more towards linux itself than Povray, but is
> there a way to open Povray and force it to stay open so that numerous commands
> from command line can perform renderings without having to open and close Povray
> itself?

Open & close ? Povray is a process. The window you see is the preview
window, and it can be disabled/enabled with the +/-D option.

What you are describing is a server, there is no such thing for povray.

>     7. If this is possible is there a way to lock it into memory and prevent
> from being swapped by linux itself? I believe the answer to this is to just give
> Povray a higher priority with nice and ionice

"nice" or "renice" is the thing to look at for the priorities.

About memory management, either you have enough RAM and the system will
keep the active processes in it, or you do not, and forcing povray to
stay in memory might slow down other operations like disk access. ( or
worse, crash/freeze the system if you had enough rights to force it all
the way)

You can of course try the sticky bit. (not suid, just sticky) (but does
Linux finally honor that bit ? I doubt, and the utility of sticky on
file is rather doubtful too)

All the previous need of course admin's rights.

Running povray with admin rights is not encouraged.

> 
> 
> Thank you so much in advance!
> 
> 


-- 
IQ of crossposters with FU: 100 / (number of groups)
IQ of crossposters without FU: 100 / (1 + number of groups)
IQ of multiposters: 100 / ( (number of groups) * (number of groups))


Post a reply to this message

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