GPU rendering doesn't use the whole VRAM

Hi,

I just installed a RTX 3090 with 24Go of RAM. Previously, I had a 2080 Ti with 12Go.

I tested a few scenes with cycles on OptiX, and it seems that I can’t go higher than 11Go before a having a “system is out of gpu and shared host memory” message. It’s like it kept the memory limit I had previously with my 2080 Ti.

For example a scene that indicates 14968.37M when I render it with the CPU, but when I try with my GPU, it gives me the same error message “system is out of gpu and shared host memory”.

Since the only reason I made the (expensive) choice to get a 3090 is to handle heavier scenes without having to render on the CPU, does anybody has an idea how I could use the whole VRAM ?

just guessing, maybe Blender didn’t recompile that render kernel with the GPU and the VRAM limit is in that compiled render kernel thing?

but I don’t know how to force to recompile it.

you are only using the RTX3090, right? If the 2080ti is still in your system and you use both you have of corse the limit from the GPU with the lower VRAM.

Yes I only have my 3090.

I had the message kernel (“something something it might take a while”) the first time so I’m not sure but I’ll look into it, thanks.

okay, if you had this message the kernel was recompiled. so I don’t think this is the issue.

The thing that seems weird is that the viewport rendering seems not to have this problem (I’m not using any adaptative subsurf or anything).

It seems that it’s just the renders that cannot handle more that 10’500M scenes. Sometime it gives me the “out of memory” error, sometimes it simply crashes. I tried to reinstall blender, to use another version but nothing seems to solve this problem.

Hi.
Could you use an external GPU memory monitor, for example GPU-z?
Put GPU-Z or any other vRAM monitor in the foreground, and at the same time you initialize the render image in Blender while you see vRAM usage in the external vRAM monitor, and you try to see the max peak of vRAM used

Thanks for you answer. I monitored the Memory usage and it’s very inconsistant, the “out of memory” message happens between 8000 and 14388. It depends from the file. And sometimes, the exact same scene can work, display an error message or make blender (or the graphic card crash).

Could it come from something else ? I joined my specs if it can be of any help.

DxDiag1.txt (111.7 KB)

If the problem persists in the latest Blender 3.1.0 version, then it would be good if you report this problem. But for this you will have to share a .blend file with developers where you can reproduce the problem.
To report, you open Blender and from the Help menu, Report a bug (you need to have an account on the bug tracker).

In the meantime you try to do a fresh clean install of the latest nvidia driver (somewhere in the installer it will give you an option to do a clean install or something like that)

There are other similar testimonials from people having similar problems with RTX cards in the bug tracker and out there, but it would be nice if you open your own report.
https://blender.stackexchange.com/questions/233301/blender-states-im-out-of-memory-when-trying-to-render-but-i-have-tons-of-unu

Windows (and most OSes) not allow one process allocate to whole memory. Generally OS allows to allocate max %50 to %75 of whole memory space (OS makes decision this amount). Your RAM 32 GB. Blender can use maximum 16 GB to 24 GB of RAM (OS makes decision this amount). All datas transfered from RAM to GRAM. For this reason, Blender throw error message after approximately 16 GB of RAM usage.

3 Likes

Are you running any background programs? I often browse the web when I launch a render, and for some reason I often get the error message “OptiX has run out of memory” on my RTX 3070ti, which is weird because it even happens on my small scenes that are around 4000mb… It’s weird that this happens, but usually just hitting F12 and not doing anything else solves the problem.

Also, you can try to launch the render on CUDA without OptiX and see if this solves the problem. I think OptiX is the culprit.

It seems that it could be the best explanation to my problem ! Is there a way to change this limit ? I’ll buy some more RAM asap, but as a temporary solution, it could help me.

I tried CUDA and it’s the same problem, and I had no other app running in the background.

I’ll do the clean install and if the RAM limit explanation doesn’t solve the problem, I’ll report the problem !

In the bug report YAFU linked, the reporter has 48Go of RAM, so his problem must be something else. And the “out of memory” error message occurs most of the time around 11’000M for me, so thinking about it, I’m not sure it’s the problem, but it’s an interesting lead, and it made me realize I really need to upgrade my RAM anyway.

I don’t know any way.

This is a security precaution. If OS allows a process allocate whole memory, then your system easily crash and other processes (applications) can not use RAM.

Thanks for your answers, I’ll give an update here as soon as I find a solution.

We programmers always recommend that RAM amount must be 2x than Video Ram. If you want use 3090 with full capacity, then you must have minimum 24 x 2 = 48 GB RAM.

I’ll do that, thank you!

So, I installed 64Gb of RAM and it’s working way better, and I can consistently render scenes that I couldn’t before. So thanks a lot @Hikmet , you found the solution :slight_smile:

It’s interesting to note that the peak memory usage is very different in blender or in total. I have a 15’580 peak in blender and around 20’000 in the total memory usage.

Running the scene in blender uses around 1’500 and the rest (I guess display and some other things I don’t really know about) uses around 1’000. So I wonder what is using the other 2’000Mb.

I’ll look into good ways to reduce the VRAM usage. I try to work with instances, reduce the textures resolution and be reasonable with geometry and subsurf, but I’m sure there’re are a lot of other ways to optimise.

2 Likes

hi dear community,
I am having the same problem, I have an RTX 3090, and 32GB of Ram,
and getting all these out of memory errors in blender when in fact it is not using all my gpu memory. So what is the consensus about this, is it that I should upgrade to 64gb of Ram? are there any other tips or things to try or test? thank you so much everybody

That seems to be the solution. if you have 3090 money, you can pony up for a couple sticks of ram. :wink:

2 Likes

thank you very much, I will do that for sure yes,
I just hope that this is the issue, I was also searching around for software that can test the memory of the RTX 3090 for corruption or other memory issues because that was my concern, but the softwares I found only scan a small amount of the memory, not all of it (if you know any way to test the memory of RTX cards please let me know :slight_smile: ) , but I hope that the solution will be that, although what makes me think is that you guys said that a person with 48GB of ram was also having similar problems, which is surprising, in any case I am for sure going to start looking to move to 64gb of ram, thats for sure, thank you