[Radiance-general] Re: rtrace

Greg Ward gregoryjward at gmail.com
Sun Jul 18 23:14:44 PDT 2010


Just back from a week in the woods, and playing catch-up....

> From: Thomas Bleicher <tbleicher at googlemail.com>
> Date: July 14, 2010 2:31:46 AM PDT
>
> I have to speculate about the connection between "-x" and "-n" here
> but i think that if you allow more processes (-n) than points in a
> scan line (-x) then rtrace simply can't start enough processes. This
> would mean that each point creates it's own process. Greg?

This is more or less correct.  What actually happens is that rays are  
sent to multiple processes, but we need to preserve the first-in/first- 
out (FIFO) order of the rays sent to rtrace, which means buffering up  
results on the output side.  Logically, if you have set -x to 5, then  
we need to take 5 ordered input ray origins and directions and run in  
through N processes until we get all 5 results out so we can put them  
back in the same order.  In other words, throwing additional processes  
over the -x setting buys you nothing, because your queue is never  
deeper than this number.  The default of -x 0 (infinite) is the best,  
because it means rtrace can continue to slurp in new rays and buffer  
them indefinitely, outputting ordered results as they become available.

In any case, you aren't likely to see much benefit to the rtrace -n  
option if you are only computing a handful of rays.

Cheers,
-Greg



More information about the Radiance-general mailing list