Memory Issue

Hi,

I’m currently trying to get a render started, and it’s failing with the following error…

[12:18:07.471] Error : Error building Embree static ray caster, error message: [EmbreeRayServer::doBuildSDTree] 3: Setting vertex buffer failed (number triangles 365177653)

Which I think signifies that I’ve run out of memory.

However, this is the memory usage of the render…

Total
Type Peak memory consumption
Bitmap 783.37 MiB
Bucket image sampler < 1 MiB
GI < 1 MiB
Lights < 1 MiB
Misc. 3.44 GiB
Static displaced geometry 25.60 GiB
Static geometry 37.54 GiB
VFB 6.33 GiB
Frame startup 10.54 GiB
Frame total 73.68 GiB

and my machine has 256GB RAM, so it seems like I should have masses to spare.

I’d rather not reduce the quality of the displacement in the scene, so is there anything I can do to allow VRay to use more of the available RAM?

Thanks,

John

Do you by any chance have a “Dynamic memory limit” (Render Setup> Settings> System) set? If yes, set it to 0.
Not sure if the actual RAM usage is logged when the error is produced. Does the error disappear if you increase the displacement’s edge length?

Hi Aleksandar,

Dynamic memory limit is set to zero, but I think it’s all static geometry anyway.

I think it would work with a higher edge length, but there are quite a few XRef’d scenes involved, and it would be a real pain to go through each one changing the values. And would obviously decrease the quality.

It works with the current edge length if I render it at a lower res - At 6000x4000 it works and says it’s used 40GB total.
However, I need it at 7500x5000, but at that size it fails and gives me that error.
I’m struggling to believe it would be using an additional 216GB for that small increase in resolution though.

Cheers,

John

Well, that’s why I asked you to check the Edge Length parameter. It is measured in pixels (if View-dependent is off), hence an increase in resolution without proper edge length scaling would give you excessive displacement detail. Also, the resolution change sums up to an approximately 50% increase in pixels, so it’s not quite a small increase. However, it does seem like far too big of a leap - maybe you could send the scene along with all the assets so we can test it out?

Hi Aleksandar,

I can’t I’m afraid. It’s all confidential, and also about 15GB.

If I change the default geometry option to ‘Dynamic’, it renders at 7500x5000 and has peak memory use of 46GB.
But I gather it would render faster with that set to ‘Auto’?

Is there some kind of internal memory limit for static geometry?

Cheers,

John

Possibly.

No, it will consume as much memory as necessary for the “caching”. Whereas using Dynamic, geometry is loaded and unloaded on the fly depending on which part of the scene is being rendered.