2
$\begingroup$

Blender version 2.93.3 GPU: GTX 3080 RAM: 32 GBS CPU 9700k Rendering in Optix+Motion blur on causes the error "Failed to build OptiX acceleration structure" and "System is out of GPU memory." Turning off motion blur fixes this problem.

Also Cuda+motion blur on seems to be working just fine.

I'm not sure why motion blur is causing this memory issue. I've tried to restart blender and the problem remains. It'll be the first time using motion blur so maybe I don't understand how some obvious setting could break it. Update: I figured out that the problem seems to be having Particle systems enabled. I'm not exactly sure why but when I turn off the hair to my character it works.

$\endgroup$
2
  • $\begingroup$ If I remember right Optix requires tighter memory handling and can't make use of a shared memory pool - This is a BIG IF, btw $\endgroup$ Dec 17, 2021 at 21:20
  • $\begingroup$ Only thing I could find is this - blender.stackexchange.com/questions/193096/… - can't corroborate $\endgroup$ Dec 17, 2021 at 21:28

1 Answer 1

1
$\begingroup$

AFAIK motion blur uses more memory, as well as particles because they basically add more stuff into your scene that you GPU has to load in memory to be able to render it.

But they are not the only things that load your GPU memory!

There are some rendering settings that also have a great impact on that. For example, in Properties Editor > Render tab > Performance panel, you have several options to look out for:

Acceleration Structure

Use Spatial Splits

Spatial splits improve the rendering performance in scenes with a mix of large and small polygons. The downsides are longer BVH build times and slightly increased memory usage.

Use Hair BVH

Use a special type of BVH for rendering hair. The bounding boxes are not axis aligned allowing a spatially closer fit to the hair geometry. Disabling this option will reduce memory, at the cost of increasing hair render time.

BVH Time Steps

Split BVH primitives by this number of time steps to speed up render time at the expense of memory.

Final Render

Persistent Data

Keep render data in memory after rendering for faster re-renders and animation renders at the cost of extra memory usage while performing other tasks in Blender.

When using multiple View Layers, only data from a single view layer is preserved to keep memory usage within bounds; however, objects shared between view layers are preserved.

$\endgroup$

You must log in to answer this question.

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