GPU Render gets slower on second run

I noticed wildly inconsistent GPU render times on a scene that I am working on.

The CPU (i7 860) render time is 1:12.
Switching to GPU (GTX 750ti with 2GB RAM) the time is 0:34 with 1.6GB used. If I immediately render again without switching to the 3D View, the render times become progressively slower: 1:04, 1:19, 1:21
If I switch back to the 3D View and re-render, the time returns to 0:34.

The CPU render times do not change from render to render.

Blender 2.71
Windows 64
NVidia Driver 340.52

Any ideas of what could be causing this before I try rolling back my video driver?

Suggest you report a bug (in blender, Help > Report Bug). This sounds like some issue with the memory not being flushed or something.

When reporting the bug, provide as much info as possible, and then post a link to the report here in case any future googlers have the same issue.

Maybe monitor the heat on your GPU. GPUs will fall back to non-over clocked speeds when they get hot.

Thanks for the quick replies, guys. The problem went away after rolling back my driver to 337.88.

I will report the bug as it appears to be either a driver problem or a bug in Blender that became apparent with the latest driver.

***Edit: posted too soon…still seeing problem. Stand by

An update. The issue is related to the complexity of the scene. If memory usage is < 1.5 GB, no problem. Above that, then the first render is fine and subsequent renders are slow. Above about 1.6 GB, and the first render is slow as well.

Although I have not measured the GPU temps because I am not instrumented for this yet, I doubt this is the problem since I can wait minutes between renders and still see the problem.

I am not instrumented for this yet,

I use MSI Afterburner for monitoring and fan control, it’s free.

I believe this to be the correct answer if using BVH Cacheing or Spacial Splits or Persistent Images. It may just be the Persistent Images option but they all seem to do something like not flushing memory. I actually thought maybe the same thing before I saw you post this.

An update. The issue is related to the complexity of the scene. If memory usage is < 1.5 GB, no problem. Above that, then the first render is fine and subsequent renders are slow. Above about 1.6 GB, and the first render is slow as well.

Although I have not measured the GPU temps because I am not instrumented for this yet, I doubt this is the problem since I can wait minutes between renders and still see the problem.

This was happening to me when I had some of the options like Spatial Splits or Persistent Images turned on. Turn them off and you should be fine.

For me, it would render 2 frames and then just quit. This tells me it wasn’t flushing out the cache or images from previous frames and then it ran out of RAM. Feel free to include this in a bug report if you open one. If you do, link it to here or PM me.

Here is link to bug report T41444. Unfortunately, I did not have caching, spatial splits or persistent images enabled, but if you have other observations, please comment on the report. In the meantime, I’m simplifying my scene, i.e. reducing the size of some of the textures-- several 4096 x 4096 images.

Add this to the bug report… developers need to know as much as possible

if you havea test scene you can upload that would also help them confirm / identify / fix the bug

My latest observation is that the slowdown seems to occur predominantly when rendering to Full Screen or New Window. When rendering to Image Editor, the sequential render times are much more consistent with the first render time. The first render time is always the fastest.

I rendered an animation with Image Editor selected: 0:31, 0:32, 0:43, 0:35, 0:58, 0:51. Stopped the animation and immediately hit render: 0:31.

Temps are ok. MSI Afterburner reporting 35 - 38 degrees C.

Afterburner is also reporting that the scene is using 2020 MB GPU memory.

Conclusion, my scene is simply too complex for my GPU.