[Radiance-general] Instances

Lucio Boscolo Lucio.Boscolo at arup.com
Thu Dec 23 04:18:25 PST 2010


Hi Lars, 

Sorry again for late answer.

I think it is a memory problem because I monitored it with top and memory is quickly reducing and as soon as it goes under 100 MB or so (when it probably starts swapping to the HD) processors use drops to 0.something %. I've got 8 GB memory and ambient files are big up to 1.5 GB (very high settings). In the worst case the octree is 600 MB.

Unfortunately the detail is all in a shading device (it is actually a transmittance study) so, no chance for using ambient exclude. And there are no overlapping geometries in the single instances and the instances replication is done by xform using the bounding box for spacing. Also care has been taken in taking away vertical faces at the boundaries to avoid overlapping surfaces. 

So what I understand from this is that if rpict loads ambient files in memory as well as octrees, in the worst case I will have for each rpict calculation 1.5 + 0.5 + some work memory in use (I don't know how to quantify this). As I cannot run more than 2 processes, the work memory is probably bigger than  [7.5(available ram  memory) / 3 (max processes before it runs out of memory)] -[1.5+0.5] = 0.5 GB, which makes sense to me. 

What do you think?

As Jack was saying I should have organized the model better, but still is good to understand what happened for future use.

Thanks for all your help and Merry Christmas to you both and to all the radiance community :-)

Lucio Boscolo Mezzopan

-----Original Message-----
From: Lars O. Grobe [mailto:grobe at gmx.net]
Sent: 13 December 2010 10:41
To: Radiance general discussion
Subject: Re: [Radiance-general] Instances

Hi Lucio,

I have never heard about a case where ambient data became critical memory-wise... Why do you think that there is a problem with memory in your case? How much memory does the rpict process occupy?

If you have a lot of detail geometry that does not contribute significantly to the diffuse-indirect illumination of your scene, you can use the ambient exclude parameters of rpict/rtrace (-ae and -aE).

If you use too many instances, or if you create them in a wrong way, they will slow down the rendering. Each time a ray hits an instance (passes the bounding cube it fits into), it has to check for collisions with any surface inside that instance. So if you have a lot of overlapping instances with little geometry contained in each, or instances with a bad ration of width/length/height, a lot of unnecessary intersection checks will happen. Instances improve memory efficiency at the cost of rendering time. It is important to balance the two. So only pack compact, high-res geometry into instances.

Cheers, Lars.

13.12.2010 10:49, Lucio Boscolo wrote:
> Thank you for all the replies sent through and sorry if didn’t thank yet.
>
> I reckon then that my memory issues were due to the ambient file... I 
> always thought it was read from the HD (and this was slowing the 
> process so that a balance between calculation time and disk access had 
> to be made to optimize the calculation time) but apparently it is 
> loaded entirely in memory, which makes sense speed wise and teaches me 
> to always simplify my models.
>
> Can you please confirm my understanding is right?
>
> Thank you once again for your great help!
>
> *Lucio Boscolo Mezzopan*

____________________________________________________________
Electronic mail messages entering and leaving Arup  business
systems are scanned for acceptability of content and viruses


More information about the Radiance-general mailing list