POV-Ray : Newsgroups : povray.general : Computer Specifications for use with POV-Ray : Re: Computer Specifications for use with POV-Ray Server Time
1 Aug 2024 12:19:05 EDT (-0400)
  Re: Computer Specifications for use with POV-Ray  
From: Stefan Viljoen
Date: 24 Feb 2006 01:38:20
Message: <43fea9db@news.povray.org>
Kenneth spake:

> Stefan Viljoen <spamnot@<removethis>polard.com> wrote:
> 
>> I have one processor, and I
>> use  a "segments of two" approach when dual-core rendering - one virtual
>> CPU gets the "top" the other the "bottom". If one finishes before the
>> other, the remaining part is again divided by two, etc.
>>
>  Can you explain that in more detail?  Sounds fascinating (and completely
> unknown to me.) Thanks!

Tsk tsk Warp... he did ask, didn't he? And, as far as I know, 3.7 is not yet
available for Linux?

Hi Kenneth

For a detailed explanation, take a look at the image I submitted to Paul
Bourke at Swinburne univ, which was rendered on a "farm" of Alpha CPU based
systems, and the article he wrote about it:

http://astronomy.swin.edu.au/~pbourke/raytracing/parallel/

Basically, you use PovRay INI file statemens to restrict a certain instance
of PovRay to only rendering a part of the scene. With any multi-core or
multi-processor system you can make this as complicated as you want, I just
usually use horisontal segments, for simplicity. The idea is like any
co-operative effort - one core / CPU does one part of the image, another
does the next, etc. If one finishes before the other, the work assigned to
the remaining CPUs is redivided, and the "free" CPU again gets part of the
remaining work.

Get the idea? The floating point load is thus shared out among many
"workers", and, just like in a human team, it means the problem is solved
much more quickly. Each CPU / core does its part, and then everybody has to
work less to solve the remainder of the problem. 

Figuratively, the problem is decimated until it is solved, by assigning and
re-assigning CPUs / cores as the problem is reduced.

Thus, you can literally raytrace images in hours or days that would have
taken a uni-core or single CPU system weeks or months to finish.

For example, the image at the link above was attempted to be traced by me -
after about two weeks on my old 400 MHz PC about 10 lines of the 480 I
needed were done. I sent it to Paul at Swinburne University in Australia
and he did it on... I think it was 32 machines in about 10 or 12 hours.

Feel free to drop me a mail at spamnot@<removethis>polard.com if you want
some examples.

Kind regards,

Stefan Viljoen


Post a reply to this message

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