3
$\begingroup$

I recently got a new computer, and I'm getting the error message "System is out of GPU memory" when going into Rendered View mode. It hasn't given me the message yet for when Rendering THE image, just Rendered View.

I do notice that my VRAM is only up to 12GiB... Is that a low number? I can't remember what my old pc was set to...

Now, given my scene includes a few of Meshes with custom made 4k-6k image textures (depending on the mesh)... But I believe my new system is well capable of handling a scene like that, isn't it?

New Specs: NVidia RTX 3080Ti (12gb) - 32GB RAM DDR4 - Intel Core i9 Processor (12900kf)

NOTE: My GPU Drivers are up to date

What needs to change? Help?

Thanks

$\endgroup$
3
  • 1
    $\begingroup$ you should ask this kind of questions e.g. in blenderartists or some other webpage. It won't be answered here and soon be closed because it's not "suitable" due to the strict guidelines here $\endgroup$
    – Chris
    Commented Dec 1, 2022 at 9:45
  • $\begingroup$ The message states how it is, you are running out of memory on your GPU. As you've noticed yourself, 12 GB of VRAM are being used. Since your GPU has 12 GB, there isn't more VRAM available. I would recommend optimizing your scene. Reduce polycount and texture resolution where it isn't visible. $\endgroup$ Commented Dec 1, 2022 at 18:17
  • $\begingroup$ @Chris Uh. Well it kinda was answered... Don't know how this is against any guidelines. It's a question regarding a Blender error on a Blender Stack Exchange...???? $\endgroup$ Commented Dec 2, 2022 at 4:22

3 Answers 3

4
$\begingroup$

Render using CUDA instead of OptiX for this scene.

The scene fits into main memory but not VRAM. Blender has the ability to use a shared memory pool and essentially do memory swaps to render heavy scenes, but AFAIK this doesn't work with OptiX rendering.

So you won't get to use the shiny tensor cores here without some optimization or sacrificing quality.

You might first consider if you really need textures of such high resolution.

$\endgroup$
2
  • $\begingroup$ So CUDA doesn’t use VRAM? Or does it use VRAM along with other memory? $\endgroup$ Commented Dec 1, 2022 at 20:59
  • $\begingroup$ It can share and move things around $\endgroup$ Commented Dec 1, 2022 at 21:53
3
$\begingroup$

One of the things I've discovered is how to trick Blender into letting you render. The system needs to "build" the scene and get all the information before it even starts to produce the image. One of the newer feature that I'm sure most (if not all) people have is "persistent data".

This might sound contradictory because the warning says it uses more memory, however this has been what I use to trick Blender into rendering 2160x5076 stills and Animations.

You enable this and basically get everything ready like you would if you weren't concerned about memory. Then in the render settings tab you slide the resolution percent down to something like 5%. It renders in less than 10 seconds. As little as under a second depending on your scene. After that's done, go straight to your render settings and increase the percentage to 100%.

As long as you've enabled persistent data before the 5% render it should render right away. I usually render more painterly style shots using lower sample count and denoiseing with different post effects, but even for my hyper realistic goals this has helped trick the engine to render. WARNING ⚠️ I do not know if Blender loads the asset information differently for different sizes, but I have seen no cons for my use with this method. Yeah it's a little odd but it gets the job done for me.

Blender loads the scene information and renders a scene that take sup probably less than a GB of ram to accomplish. Now since the information is saved (thanks to the function of "persistent data") I can render my 4k render right away no problems.

Somebody pleas let me know if this is doing something terrible on the backend or if there's a nicer way but this has been my solution for a while now.

The setting is available for Cycles in PropertiesRenderPerformanceFinal RenderPersistent Data:

$\endgroup$
3
  • $\begingroup$ Where can I find this persistent data option? please provide a screenshot? and in which version is this? $\endgroup$
    – Harry McKenzie
    Commented Sep 9, 2023 at 23:59
  • 1
    $\begingroup$ @HarryMcKenzie see edit. $\endgroup$ Commented Sep 10, 2023 at 9:59
  • 1
    $\begingroup$ I don’t know how this doesn’t have more upvotes. This is more-or-less required information! $\endgroup$
    – Dúthomhas
    Commented Oct 25, 2023 at 19:39
-2
$\begingroup$

I've created an add-on that will help in those situations...

Split Render Tool (SRT)

It splits the image using Render Region, and it merges them again without user interaction. The well known Denoise issue is fixed by rendering the borders.

While there are some add-ons with this same feature, none of them can render animations (just single images). SRT goes far away giving the ability to render animations.

It is useful for render high resolutions (8k, 16k, 32k...), and to avoid "System is out of GPU memory" error.

By other hand, SRT lets you animate Render Region like any other property along the timeline. Which will save users a lot of render time, when re-render is needed.

Video: https://youtu.be/YtLWObFs2yU

BlenderMarket: https://blendermarket.com/products/split-render-tool

Documentation: https://github.com/OlyDJ/SplitRenderTool/wiki

DEMO: https://oliviercrespo.gumroad.com/l/SplitRenderTool_DEMO

$\endgroup$
1
  • $\begingroup$ While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. - From Review $\endgroup$
    – Harry McKenzie
    Commented Jul 29, 2023 at 0:09

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .