I watched a setting video on YouTube and they suggested that if you have a good GPU, select the GPU and deselect the CPU? I always thought that if you select both it would render faster, is it correct to only have the GPU selected?
It depends on your own hardware and the scene you render. You need to test it out and know your stuff.
In my personal use case, most of the time I do get slightly faster renders if I use both my GPU and CPU, especially if I use all except one core of my CPU.
But I know people who get absolutely worse performance, some who divide their render time by two, and some who don't see the difference.
So, again, do tests on your side, try different scenes, with ant without CPU, and with different amounts of cores (all, half and "all except one").
If you do get better performances, take into account the downsides: extra power usage and your pc is pretty much a very hot brick until it is done rendering. Not always worth it, IMHO. And especially on laptops : overheating can become a genuine issue there, so be careful.
As for the claim that GPU need big tiles and CPU small tiles: this is years outdated pratice.
Firstly because GPUs performance on small tiles got improved (at least on CUDA) back in v2.80 (2019):
CUDA renders no longer need to use large tiles. In many cases rendering with a tile size of for example 32x32 will actually be faster now. When using denoising it may still be somewhat faster to user large tiles, but this comes with a high memory usage cost. (6da6f8d)
It was rarely exactly as fast as the faster time you could get with big tiles, but already some people could get better times if hybrid rendering.
Then GPU were able to steal unfinished CPU tiles in v2.92 (2021):
GPU devices can now take over tiles that are currently being rendered by CPU threads to improve hybrid rendering performance. (517ff40b12) Reference/Release Notes/2.92/Cycles - Blender Developer Wiki
This avoided the issues where your GPU would finis almost all your frame but keep waiting for your CPU tiles to finish. Which was a major issue for people with CPU significantly slower than their GPUs on small tiles.
Then for Blender 3.0 (2022), the new CyclesX doesn't work the same anymore and tile management is mostly just a matter of memory management rather than performance:
The render is now progressively refined by default, giving a quicker preview of full render. However when rendering high resolution images with many render passes, memory usage can be significant. For this reason high resolution renders are automatically split into large tiles, and each tile is cached to disk as it is completed.
Previously tweaking tile size was important for maximizing CPU and GPU performance. Now this is mostly automated. There are still two situations where reducing tile size from the default can be helpful:
- When there is not enough memory to fit both the scene and render result, reducing tile size makes more memory available for the scene.
- When a small object renders very slowly compared to other objects (for example transparent hair), rendering with smaller tiles can help keep the GPU busy.
A good testimony of that change can be found by comparing the official manual about tiling. It remained like this:
Tile size X/Y
The size of the tiles for rendering.
Depending on what device you are using for rendering, different tile sizes can give faster renders. For CPU rendering smaller tiles sizes (like 32 x 32) tend to be faster, while for GPU rendering larger tile sizes give better performance (like 256 x 256).
Then for v3.0 it was changed to this:
This value is used to control the size of the tile used for rendering; decreasing the size reduces memory usage.
In some cases changing the Tile Size can result in increased performance. For example when a small object renders slowly compared to other objects, using a small Tiles Size can lead to an increase in performance.