Less VRAM Than Expected Out of Card
Hey all! I'm a pretty new Daz user, and I have been having issues recently with excessively low VRAM availability on my system while using the VulpineFolk models, though I suspect the issue isn't with the models. To illustrate the problem, I created a test scene. This test scene consists of 1x Reynard and 1x Reyna standing in a T-Pose in an empty environment with one camera pointed at them both. The issue is that, according to the log, when trying to render this in iRay, it cannot be done with the GPU, as it believes it only has 2.49GiB of VRAM available.
2021-01-04 21:05:48.510 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : Initializing OptiX for CUDA device 0<br />
2021-01-04 21:05:48.841 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : Rendering with 1 device(s):<br />
2021-01-04 21:05:48.841 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : CUDA device 0 (GeForce RTX 2070 SUPER)<br />
2021-01-04 21:05:48.841 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : Rendering...<br />
2021-01-04 21:05:48.844 Iray [INFO] - IRAY:RENDER :: 1.15 IRAY rend progr: CUDA device 0 (GeForce RTX 2070 SUPER): Processing scene...<br />
2021-01-04 21:05:49.499 Iray [VERBOSE] - IRAY:RENDER :: 1.17 IRAY rend stat : Geometry memory consumption: 3.662 GiB (device 0), 0.000 B (host)<br />
2021-01-04 21:05:49.515 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [ERROR] - IRAY:RENDER :: 1.17 IRAY rend error: Unable to allocate 3.381 GiB from 2.409 GiB of available device memory<br />
2021-01-04 21:05:49.518 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [ERROR] - IRAY:RENDER :: 1.15 IRAY rend error: CUDA device 0 (GeForce RTX 2070 SUPER): Scene setup failed<br />
2021-01-04 21:05:49.539 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [ERROR] - IRAY:RENDER :: 1.15 IRAY rend error: CUDA device 0 (GeForce RTX 2070 SUPER): Device failed while rendering<br />
2021-01-04 21:05:49.540 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [WARNING] - IRAY:RENDER :: 1.15 IRAY rend warn : All available GPUs failed.<br />
2021-01-04 21:05:49.541 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [WARNING] - IRAY:RENDER :: 1.15 IRAY rend warn : No devices activated. Enabling CPU fallback.<br />
2021-01-04 21:05:49.547 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [ERROR] - IRAY:RENDER :: 1.15 IRAY rend error: All workers failed: aborting render<br />
2021-01-04 21:05:49.551 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : CPU: using 12 cores for rendering<br />
2021-01-04 21:05:49.552 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : Rendering with 1 device(s):<br />
2021-01-04 21:05:49.552 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : CPU<br />
2021-01-04 21:05:49.553 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : Rendering...
This is happening on an RTX 2070 Super without any other 3D applications running in the background. Task Manager shows that I have upwards of 6GB of VRAM available, and during the render I can actually watch Daz3D take about 3.5GB of VRAM in task manager, but proceed to do nothing with it, and force everything onto the CPU to render. I have tried all the "normal" troubleshooting steps, such as a restart, updating drivers, etc etc etc. Any help in solving this would be incredibly appreciated. I can send over any additional information as it's needed.
Comments
Please try posting the log again, so that it has the line breaks.
Are you using a version of the foxes with fur?
I made a quick search and replace:
2021-01-04 21:05:48.510 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : Initializing OptiX for CUDA device 0
2021-01-04 21:05:48.841 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : Rendering with 1 device(s):
2021-01-04 21:05:48.841 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : CUDA device 0 (GeForce RTX 2070 SUPER)
2021-01-04 21:05:48.841 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : Rendering...
2021-01-04 21:05:48.844 Iray [INFO] - IRAY:RENDER :: 1.15 IRAY rend progr: CUDA device 0 (GeForce RTX 2070 SUPER): Processing scene...
2021-01-04 21:05:49.499 Iray [VERBOSE] - IRAY:RENDER :: 1.17 IRAY rend stat : Geometry memory consumption: 3.662 GiB (device 0), 0.000 B (host)
2021-01-04 21:05:49.515 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [ERROR] - IRAY:RENDER :: 1.17 IRAY rend error: Unable to allocate 3.381 GiB from 2.409 GiB of available device memory
2021-01-04 21:05:49.518 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [ERROR] - IRAY:RENDER :: 1.15 IRAY rend error: CUDA device 0 (GeForce RTX 2070 SUPER): Scene setup failed
2021-01-04 21:05:49.539 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [ERROR] - IRAY:RENDER :: 1.15 IRAY rend error: CUDA device 0 (GeForce RTX 2070 SUPER): Device failed while rendering
2021-01-04 21:05:49.540 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [WARNING] - IRAY:RENDER :: 1.15 IRAY rend warn : All available GPUs failed.
2021-01-04 21:05:49.541 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [WARNING] - IRAY:RENDER :: 1.15 IRAY rend warn : No devices activated. Enabling CPU fallback.
2021-01-04 21:05:49.547 WARNING: ..\..\..\..\..\src\pluginsource\DzIrayRender\dzneuraymgr.cpp(353): Iray [ERROR] - IRAY:RENDER :: 1.15 IRAY rend error: All workers failed: aborting render
2021-01-04 21:05:49.551 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : CPU: using 12 cores for rendering
2021-01-04 21:05:49.552 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : Rendering with 1 device(s):
2021-01-04 21:05:49.552 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : CPU
2021-01-04 21:05:49.553 Iray [INFO] - IRAY:RENDER :: 1.0 IRAY rend info : Rendering...
The bold text looks suspocious to me. A 6GB VRAM card should have more than 2.4 GB!
Have you activated the Iray preview mode before rendering? After rebooting your machine try to open the scene in texture only mode and hit the render button without switching to Iray preview first.
Yes, I am using a version of the foxes with the fur. No modifications have been made to their fur properties, or any other properties of the model.
Nope, just tried it with just texture shading (I never activated the IRay preview to begin with) and I got the same result. You definitely were on the right track with the issue though, it should have more than 2.4GB of VRAM available.
The 2.6GB appears to be 6 - 3.662GB from the geometry, which would add up about right. I wiould think that was down to the hairs, so reducing their number (in the Surfaces pane) might help.
I'm afraid I don't quite understand what you're saying here. I think I've been a bit unclear in describing what happens. I have an RTX 2070 Super, which has 8GB of VRAM. According to Task Manager, before I start a render, I have anywhere from 6.3 to 6.7 GB of that free and unused. The behavior I see when I start the render is that after about a minute of thinking (which I believe to be normal for DAZ Studio as it prepares assets and such) my VRAM usage will spike up (what looks to be about 3.66GB worth) but then my CPU will do all the work of the render, and the log file will show a ridiculously low sum of VRAM available, like 2.66GB.
To actually illustrate this better, I ran a test while timekeeping against Time.gov to compare events in task manager to what the log file is saying. (My PC is in sync with my timezone, I did check before running this test.)
2021-01-05 14:11:48 - I start the render, and my normal RAM usage climbs as I would come to expect as it prepares the render.
2021-01-05 14:12:59 - my VRAM usage climbs from 1.8GB/8.0GB to 5.6GB/8.0GB
2021-01-05 14:13:05 (six seconds later) - The log file indicates it is " Unable to allocate 3.381 GiB from 2.831 GiB of available device memory "
2.6GB is exactly how much VRAM is left after it spikes initially, so it looks like Daz is taking 3.5ish GB from my VRAM (which is about how much it said it needs) and then asks for 3.3GB more, which makes no sense to me at least. And I wasn't able to get my VRAM usage down much by decreasing hair density, so unfortunately it looks like I have to confront this head on. I've tried lots of optimization techniques (including setting both models to Subd 1, etc) and cannot get the scene itself to 'take' less than 3GB.
With Cycles in Blender, the scene ultimately takes a certain amount of VRAM, but before that, VRAM usage can actually can peak much higher as it calculates things. Maybe that is what is happening? It's a different renderer but the same driver, afterall...