Introduction
With V-Ray 6 update 2 for Maya and Houdini (and the latest Hotifx for 3Ds Max), V-Ray GPU is able to offload Textures to system memory, to lower GPU memory usage significantly with little impact on performance. This is an entirely new implementation of Out Of Core(the old implementation is deprecated and removed from the UI). This new feature should be used for rendering massive scenes with many high-resolution textures, in which GPU memory is insufficient to render the scene. If your scene data fits in the memory of your GPU, it is best to stick to GPU memory for rendering. To use OOC Textures, enable Use System Memory For Textures option in the UI When enabled, all textures that are bigger than 1 MB in size will be allocated in CPU memory and become accessible to all rendering devices.
Note: OOC Textures is supported in both CUDA and RTX engines, and could be used with hybrid Rendering Note, V-Ray GPU uses PCIE bandwidth to move texture data to system memory. PCIE 4.0/5.0(in newer CPUs and motherboards) will show little impact on rendering performance
Note: all texture modes(Resize, Compressed..etc) are greyed out when OOC is enabled.
Use System Memory for textures enabling in Maya
Use System Memory for textures enabling in 3ds Max
Testing
We have tested 3 scenes on an RTX 4090 using Progressive mode, the results are double-checked. To ensure accurate results. All tests run for at least 5 minutes.
First scene
- GPU memory usage is reduced from 17 GB to 5.1 GB
- Render time is 655 seconds and 742 seconds when OOC is enabled, 12% slowdown
Second scene
- GPU memory usage is reduced from 22 GB to 4.8 GB
- Render time is 550 seconds and 681 seconds when OOC is enabled, 23% slowdown
Third scene
- GPU memory usage is reduced from 16 GB to 4.9 GB
- Render time is 371 seconds and 435seconds when OOC is enabled, 23% slowdown
Note: for multi-GPU setups, the performance hit could be higher. This is something we plan on improving in the future.
Monitoring Texture memory
Windows Task Manager the Texture memory when OOC is enabled will be reported under Shared GPU memory:
V-Ray Log will report the Texture memory if OOC is enabled.
Note: the stats tab doesn't show information about OOC yet. This is something we plan to improve in the future.