Dramatic performance drop while rendering
Hello guys,
up until yesterday whenever I rendered something in Daz with iRay my PC became very very loud (all fans rpm to the max) and it took about 45 minutes to get the render quality I wanted.
As of today, without changing anything (no new software/driver installed, no settings changed), my PC is much quieter while rendering and it takes more than 2 hours to get the render quality I want. It seems to me that Daz/iRay stopped using my machine to its full capability and I can't understand why.
I've downloaded HWInfo and while rendering now my CPU goes up to 73°C (163°F) while my GTX GPU is 35°C (95°F) which means that Daz/iRay isn't using my GPU (VRAM, however, is being all used). I don't know if this is relevant info. But it's really annoying rendering is taking forever now.
I've updated the GPU drivers but it didn't change anything.
Comments
The way it works is DAZ Studio builds your scene in system RAM and puts it all together. Let's say it takes 8GB of system RAM. When you hit Render, it converts all that tons of scene data into magical Iray code, which generally requires GPU VRAM that's about 50% of the system RAM requirement . So in this case DAZ sends all that magical Iray code over to the GPU and fills up about 4GB of GPU VRAM. Or at least it tries to. If the GPU only had 3GB available, it might fill up that 3GB and say "uh oh, ain't no more VRAM left". At which point it fails and falls back to the CPU(s) and they start rendering if they can. So just because it filled you GPU VRAM doesn't mean it was successful in getting the GPU to do the render.
My suggestion is to ignore HWInfo and GPU-Z and all those other apps that people seem to love, and fire up Windows 10 Task Manager. Under the Performance tab you can change any of the charts to show what the Iray CUDA engine is doing by merely selecting the drop down arrow. That should tell you if the GPU is doing anything. And you can also get data on the VRAM usage, temperatures, etc. And if you want to get fancy you can go to the Details tab and find out what each process is doing with regards to your GPU. Just right click on any of the columns and select anything that says GPU.
As I said the last time you posted something like this, I don't see any sign of a column for CUDA activity. GPU-Z gives a simple aggregate activity which for many purposes is all that's needed, rather than the way Task Manager seems to show some kinds of activity only in specific graphs in the performance tab.
Well then use GPU-Z if you want.
There's several flaws in your arguement for not using "...Apps that people seem to love...".
Not everybody is running windows 10, or server 2016, so that task manager option, may not even be available.
There's also the potential lack of familiarity with it. Gpu-z, and other programs, have been around a lot longer than this option in task manager, so they may be more comfortable/familiar with it.
Then there's situations, like mine, where the information provided in gpu-z, or task manager, isn't always correct, for a particular gpu.
Since i run an AMD gpu(firepro) for video out and a computational card for rendering(p106-100, tesla, etc), gpu-z doesn't report the correct amount of vram/gpu utilization being used on my computational cards, and some other info isn't correct either.
In this case, i have to use SMI, a command line tool from nvidia, to track utilization on my render cards.
This is why many of us provide multiple solutions to tracking this information and let the user determine which may be the best solution for them, instead of proposing only one solution.
In my years visiting this forum I think it's safe to say that nobody EVER mentions Task Manager when it comes to GPU tracking. Everybody ALWAYS mentions GPU-Z. I'm convinced that part of that is because people have't been aware of Task Manager's capabilities, and for whatever reason seem downright hostile to the thought of suggesting a different tool. As you've no doubt seen, people take this stuff personally for some reason.
I agree with you that these are only tools and we should let users know what's out there. That's why I bring up Task Manager, since it's guaranteed nobody else will mention it, even though (IMO) it's often the best tool for the job when it comes to GPU monitoring. Not always, but often.
If you're running a single gpu, close out everything you don't need and monitor how much vram you're using prior to render. Taskmanager(win 10), Gpu-z, SMI, etc.
In daz studio, open on an empty folder, sometimes being in a folder with lots of thumbnails can cause just that little bit of difference if you're close to maxing out the vram on your gpu.
Try opening and resaving the scene, close DS then reopen the scene and see if the new version has the same problem. I've had times that, for some unknown reason, a particular scene file has an error in it that causes problems when i go to render. Rare, but happens.
And the usual, Reduce texture sizes(scene optimizer), remove anything that's not necessary for the scene, check render settings and turn off anything that increases vram utilization(ai denoiser, bloom filter, etc) that you're not using, etc.
Except that quite often people asking questions are not computer savy. In order to get US the information that is needed in helping one in problems, it's easier and faster to have the one with problems start GPU-Z and the information is right there without having to explain any changes to the setup.
What one uses in ones own computer and how, is completely different thing.
Look, I couldn't care less what people use. But Task Manager and GPU-Z provide DIFFERENT information. It's important that people understand that you can't just lump stuff together as "GPU activity". Task Manager shows you what INDIVIDUAL PROCESSES are using. That's important.
You don't have to be computer savvy to start Task Manager. And WE can't know what's really going on unless we know what processes are running and possibly using the GPU. And also what GPU engines are being utilized. You don't get that from GPU-Z. Someone just had an issue with a rogue piece of software grabbing their GPU, and thought it was DAZ. It wasn't. And if you don't know that then you spend days going down a rabbit hole.
Below is my Task Manager showing a bunch of processes using GPU memory. That's important. And all it takes is firing up Task Manager (which most everyone has), and right clicking on a column to select GPU data.
I normally GPU-Z, too, but there is definitely a CUDA column available in the Windows 10 Task Manager's Performance tab, just like ebergerly described. I don't have any fancy version of Windows 10, just the cheap Home version, so I don't know why I can find it, and you can't find it. Perhaps you are not looking in the place that ebergerly described. This is what I see:
These are my GPU-Z readings (Task Manager doesn't give me any):
idle: https://i.imgur.com/BAT9mwA.png
while creating the scene in Daz: https://i.imgur.com/Y6QdczK.png
after the first hour of rendering: https://i.imgur.com/xBcKk61.png
VRAM is filled to the brim but the GPU might as well be turned off. This is really silly, I didn't change a single parameter yet Daz/iRay suddenly stopped using my GPU. Does that even make sense? It worked just fine two days ago, smh. I'll try to change the settings DrunkMonkey said...
I've tried with different scenes using very different assets but it doesn't change anything. I wonder if I should uninstall and reinstall Daz but that'd be a real pain.
Your GTX 1660 Super has 6GB of VRAM. During rendering the entire GPU VRAM is full according to your GPU-Z chart. No idea what is using that VRAM, but as I mentioned initially it's likely that DAZ/Iray tried to use whatever was available in the GPU, kept filling its VRAM until it got full, and said "Ooops, not enough VRAM here" so it fell back to CPU rendering (if the CPU's are selected to do rendering). But that doesn't mean it will erase all the GPU VRAM it filled (unless you close DAZ Studio).
So like I said initially, it seems that the GPU VRAM got filled and it wasn't enough to render the scene. Is your CPU selected to do rendering? If so, you should see CPU activity doing the rendering.
And like I said before, it would help if we could see what other processes are using your GPU and its VRAM. Maybe something else is running you're not aware of.
This is the details reading from Task Manager: https://i.imgur.com/5zCPx2J.png
(Closing Firefox doesn't change anything)
and I don't have CUDA from the drop down menu you mentioned: https://i.imgur.com/uDtfNjN.png
This is the details reading from Task Manager: https://i.imgur.com/5zCPx2J.png
(Closing Firefox doesn't change anything)
and I don't have CUDA from the drop down menu you mentioned: https://i.imgur.com/uDtfNjN.png
Are you using Windows 7? That looks like a VERY old version of Windows.
What is in your scene? I'm assuming it's fairly substantial with a lot of stuff that's filling up the VRAM. Try a blank scene and just load one character and render.
Yes, I was querying the statement that the re was a column in the Details that gave the infromation. However, other than correcting me on that if need be, I think the "what should be used for measuring" discussion has run its course.
Richard,
In the Details tab, there are 3 selectable columns dealing with GPU engine performance. "GPU" shows the highest % utilization across all GPU engines. The second, "GPU Engine", shows the most utilized GPU engine. So for example if I'm rendering in Blender Cycles it shows the "3D" engine as the most utilized, and provides a percentage for that process. I could also see a chart of the 3D engine performance in the Performance tab. The third column is how much dedicated GPU memory each process is using.
What it doesn't provide as yet is specific info on the CUDA engine, however that info is provided in the Performance tab with a real time chart. And since for most people DAZ/Iray is the only CUDA process they'll be running, you have pretty much what you need to see what's happening across all processes.
I'm using Windows 10 Pro.
And you're right. I've loaded a character in an empty scene and if I render it the GPU temperature skyrockets while VRAM is only half used.
So, VRAM is a bottleneck if I render a complex scene because not enough data are being sent to the GPU?
It seems so counterintuitive to me that a complex scene leaves my GPU idle while a single character makes it work to its fullest. I guess the only solution is to buy a videocard with more VRAM...