2
$\begingroup$

but have been using Blender for awhile now. I have tried searching for an answer for this and even tried the Blender documentation.

GOAL: to have Blender work as stably and efficiently as possible. I thought that perhaps taking advantage of the metal shading would be ideal. I'm honestly not even really able to tell if using GPU compute for rendering is better than having used CPU render in the past.

I'm on Blender 3.5.1, and on a MacBook Pro 2019 Intel (see attached)

MAIN QUESTION: is there any point in having BOTH the GPU and CPU checked in the system preferences when using GPU compute?

Additionally, if you are using CPU for rendering, is there any point in having both checked?

See attached for my current settings and feel free to advise me! Thanks in advance!

Macbook Specs

Blender system settings

enter image description here

$\endgroup$
2
  • $\begingroup$ I have the same hardware. On my test scene: CPU=83s, GPU=34s, GPU+CPU=34s. So just going by these numbers, Blender doesn't seem to be using the CPU at all in this case, even though I checked both. $\endgroup$ Commented Aug 26, 2023 at 7:18
  • $\begingroup$ With CPU+GPU though the CPU load is at 100% while rendering, but with just GPU the CPU is pretty much idle. So even though it doesn't help, with CPU+GPU the CPU does something. CPU load measured using github.com/walles/loadviz $\endgroup$ Commented Aug 26, 2023 at 10:53

1 Answer 1

2
$\begingroup$

You should benchmark this yourself on your own scene!

In my case enabling just GPU made the most sense, see below.

Benchmark Numbers

Here's are Cycles rendering times on another MacBook 2019 with somewhat different configuration, Blender 3.6.2 and a test scene of my choosing:

  • CPU: 1m23s
  • Metal with CPU only: 1m20s
  • Metal with GPU only: 0m34s
  • Metal with GPU+CPU: 0m34s

Conclusions

  • CPU and Metal with CPU backend perform the same. Differences are within the margin of error.
  • Metal with GPU backend is 2.5x faster than the CPU. w00t!

Regarding Metal with both GPU and CPU enabled I observed in my test:

  • Performance was the same as GPU only
  • CPU load was 100% while running this, unlike when I had only GPU checked
    • So the CPU was used for something...
    • ... but that something had no effect. Seems like a waste of electrons. Maybe this is different if you render animations? Or with tiling?

Cycles Settings

Given that you want "to have Blender work as stably and efficiently as possible", here are my suggestions for your Cycles settings:

  • Don't use "Experimental" features unless you have to. They are marked as experimental because they might be neither stable nor efficient.
  • Set Viewport Noise Threshold to 1.0 for better interactivity (and worse quality)
  • Set Render Max Samples to something really high (4096?) and no Time Limit. Then adjust the Noise Threshold until you get a good time vs quality tradeoff. Start with 1.0 and work your way down! If 1.0 is good enough going lower will just increase rendering times.
  • Also, experiment with increasing the Noise Threshold and enabling Denoising of the final image. Tradeoffs:
    • Denoising makes the rendering itself take longer, and takes some time in itself
    • Denoising can help you get away with a much lower quality (and thus quicker) base render
    • Denoising isn't magic, sometimes you need a costly render to make it look nice
$\endgroup$
1
  • 1
    $\begingroup$ Hey Johan, I'm not allowed to upvote yet because I'm so new, BUT I just want to thank you so much for taking the time to really get into the details on this and giving me your insights and expertise. I greatly appreciate it! $\endgroup$ Commented Aug 31, 2023 at 2:42

You must log in to answer this question.

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