POV-Ray : Newsgroups : povray.pov4.discussion.general : Next Generation SDL Brainstorming : Re: Next Generation SDL Brainstorming Server Time
28 Jun 2024 21:29:55 EDT (-0400)
  Re: Next Generation SDL Brainstorming  
From: moppel
Date: 2 Apr 2009 04:25:00
Message: <web.49d474a3ad5940478b1036940@news.povray.org>
Chambers <ben### [at] pacificwebguycom> wrote:
> I thought of that response too, but then realized that if you're passing
> frames to different instances of POV then you might have a case of
> instance #1 opening a file for output, instance #2 seeing the file isn't
> finished, and both instances trying to write to it.
>
> Checking, instead, if the file exists before rendering seems a much
> better solution (especially combined with +C, which makes it darn near
> elegant).

Actually, I had it happening that two instances were rendering the same frame.
But that doesn't cause errors (on my system). Both instances just render the
same frame, and the instance which finishes last overwrites the file.

The DOS-batch file that I use for rendering first checks if the frame is
present. If not, it creates it (as an empty file), and then it starts Povray.
By instantly creating the frame in the batch file instead of letting Povray
create it, chances are lowered that another DOS-batch file finds that frame
non-existant and starts another Povray instance to render the frame.

This works fine when using just a few instances (eg. 4 instances on a quadcore
system). If each frame takes 1 minute or more to render, it's rare that two
instances are looking for non-existant frame at the same time.

Of course, when using a render farm with hundreds and thousands of instances,
this approach wouldn't be sufficient. Then a platform independant solution
would be to have one process, the master, tell the other povray instances to
render certain frames. A free instance would just tell the master that it's
ready to render, and the master, who keeps track of the frames rendered so far,
would tell the instance which frame to render. Communication could be done by
writing/reading information to/from specific files.

But at the moment, for me it would be really enough just to have an option such
that Povray doesn't rerender existing frames.

Cheers,
Burkhard


Post a reply to this message

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