Cycles OpenVDB not working with High Res data sets, testing Moana OpenVDB High Res set

Is it known that Cycles is incapable of rendering Moana OpenVDB High Res set?

A user told me that he tried to because he was working in a smoke sim that was 4Gb/frame, the High Res version of Moana OpenVDB set is 2.8Gb, so it’s smaller.

In the end he tried Houdini and Cycles, Cycles is incapable of rendering it, while Houdini uses 16 seconds to load it and renders it without trouble.

Here is the link to the VDB set:

https://www.technology.disneyanimation.com/clouds

I tried it and no matter if I use CPU or GPU, with CPU it crashes, with GPU it gives me an out of memory error.

I think this goes for @brecht and @StefanW

Currently, Cycles is wasting a lot of memory by using a dense instead of a sparse volume representation. This is being worked on:
https://developer.blender.org/D8794

1 Like

Thanks for the info!

Do you think the patch could be ready to be applied and tested or it’s better to wait?

It will see more development in the coming weeks, it’s IMHO not ready for master yet, but from skimming the code I don’t see any obvious problems.

Great, I don’t mean for Master, but for our build, so we and others can test it, if it shows any obvious flaws I can rebuild without it :slight_smile:

@StefanW I’m not sure if I have to enable something in the UI or load the VDB´s in a special way, but I did a build with NanoVDB enabled, everything was correctly built, but when I use the medium resolution moana sample I get the same memory footprint, 3.1Gb of ram for that, I have not tried the high res one, but I bet it will crash exactly the same.

Do I have to do something special besides copying the library to libs, enabling the WITH_NANOVDB and configurin the lib path?

It does not seem to do anything I’m afraid :S

You should try stepping through in the debugger to see if it really runs the correct code. From the sound of it though, I think it somehow isn’t picking up the WITH_NANOVDB flag.

In my tests, the full size Moana cloud renderers without crashing using around 4GB device memory, the half size cloud renders in less than 1GB device memory.

1 Like

I think that too, I still have to test with your latest commit and the make deps change you did :slight_smile:

FYI, Here is the link to the quarter sized cloud and .blend file in Blender’s repository in case it is helpful. :hugs:

https://developer.blender.org/diffusion/BL/browse/trunk/lib/benchmarks/cycles/wdas_cloud/

The quarter was easy to render even without NanoVDB, the problem comes when you want to use a big production data set, like the High Res from Moana :slight_smile: