Blender 3D is a 3D modeler, animator, and renderer all in one package. Vidoe gamers will know that to play most games you will require a GPU, although not all the time as there are a few exceptions. Does this need for the big metal box to transition over to a 3D application like Blender though, and if so, where is it used.
It is not a requirement to have a dedicated GPU to run and use Blender 3D. All functions can be run using a computer’s CPU instead. If you do have a GPU, you can assign it to render based tasks like rendering out images and animations, viewport performance, and denoising.
The GPU is there to enhance Blenders’ performance but just as it is an optional piece of hardware for any computer, it is also optional for 3D modeling. But there are most certainly reasons why you would want one, or two.
What Is A GPU?
The term GPU is short for Graphics Processing Unit. It is an additional piece of hardware that is attached to the motherboard via a PCI-E slot. Unlike a CPU which has a very small footprint, A GPU is much larger with most models having their own cooling solution built-in. This cooling solution is referred to as a heat sink.
The main purpose of a GPU in a computer is to provide additional capabilities for 2D and 3D computer graphics, in particular video games. The main chip on the GPU is a single core unit that acts as the graphics processor. It works with several other parts on a circuit board to run high level graphics for the PC.
Also on the board of the GPU, we will find a series of VRAM modules that are used to store the graphical information for the images that are generated on the screen. The greater the amount of VRAM a graphics card has, the more graphical information can be stored.
This is important for use in a 3D application like Blender, where the more complex a scene becomes the more memory it will require. This is not only true when we decide to render an image, but it also influences the general performance in the 3D viewport as well.
For example, if you have a low-tier graphics card like an NVidia 1060, and have built up a high poly scene with over 5 million triangles, then you will likely find navigating the viewport becomes choppy and unresponsive, especially in the rendered view.
By comparison, choosing a more modern graphics card like a 3080 will raise the ceiling considerably for what you can have in your viewport before the performance begins to degrade.
What Can A GPU Do To Improve Blender?
The main reason why you would want to use a GPU with Blender is to reduce render times. When creating a scene you may choose to render either a single image or an entire animation to add to your portfolio of work or publish on social media. Depending on the hardware, rendering the scene can take just as long or even longer than the process of actually creating the scene, so you will want to find ways to reduce those render times
The number one way of reducing your render times is to use a graphics card for rendering instead of your GPU.
However, it is not always a guarantee that the GPU will be faster. If you use a top-tier CPU with 64 cores like the AMD Threadripper and compare it to an old Nvidia GTX 1050, then the CPU is likely to win the race. But this is not a normal setup, as if you own a powerful CPU then you probably own a more powerful GPU as well.
Below is a table comparing some of the currently available graphics on rendering times for the classroom benchmark. We choose this benchmark as a preview because of its lower memory requirements and detailed layout that could be replicated by members of the Blender community, as well as the fishy cat benchmark.
Data is an approximation estimation based on data gathered from opendata.blender.org. The lower the time the better the result. Not all available graphics cards are listed here.
|Nvidia RTX 3090||35.2 Seconds||18.1 Seconds|
|Nvidia RTX 3080 TI||34.6||18.4|
|Nvidia RTX 3080||39.7||21.9|
|Nvidia RTX 3070 TI||48.6||30.3|
|Nvidia RTX 3080 LAP||54.7||36.7|
|Nvidia RTX 3070||50.7||30.3|
|Nvidia RTX 2080 TI||86.8||32.8|
|Nvidia RTX 3060 TI||64.5||38.2|
|Nvidia RTX 3060||97.9||49.7|
|Nvidia RTX 2080 S||91.1||43.4|
|Nvidia RTX 2080||116.6||50.6|
|AMD Radeon RX 6900 XT||71.4||62.4|
|AMD Radeon RX 6800 XT||74.8||65.9|
|AMD Radeon RX 6700 XT||114.1||96.8|
|AMD Radeon PRO W6800||92.1||74.6|
|AMD Radeon RX 6800||98.9||71.8|
|Nvidia GTX 1070||363.8||229.8|
|Nvidia GTX 1060||599.4||316.6|
Should I Get More Than One GPU?
When it comes to general performance there is little reason o double up on the number of graphics cards that you are using. However, you could see a substantial improvement to render times if you choose to upgrade your system with an additional graphics card.
If you are using an older version of Blender than 3.0, then you will likely not be using Cycles X. In this case multiple GPUs will be very beneficial as each GPU is used to render a section or tile of the image.
Having two GPUs allows for two tiles to be rendered at the same time. In practice, this can improve performance by between 60% – 90% for render times, but note that having two graphics cards does not double the amount of video memory allocated to the render, only the processing power to generate the render.
What Tasks Are Better Done On The CPU?
There are actually a few examples where the CPU performs better than the GPU. One example is when rendering a scene that requires a high amount of video memory. If we go back to the layout of a graphics cards circuit board, we have a series of VRAM modules for storing graphical information.
An Nvidia RTX 3080 for example is an extremely powerful graphics card and can cruise through renders much faster than most. However, its assigned 10GB of VRAM is a limitation when it comes to rendering images in Blender. Why? because if you try to render a scene that requires 12GB of memory using a graphics card that only has an allotted 10GB of storage, then the render will outright fail.
In this scenario, using the CPU may be the better option as the system RAM will be used instead. most modern day computers will normally have more RAM installed on the motherboard than the VRAM of the graphics card, making the render more feasible. The downside to this is CPU rendering is again, slower in general than GPU rendering, sometimes much slower.
Another task that users the CPU is the use of physics simulations. These can vary from fluid sims to cloth, to smoke and fire. The amount of system memory that your computer has here is just as important as how good your CPU is, so when picking parts for your PC, make sure to keep a good balance.
Adding A GPU To Blender For Use
Blender will not utilize your graphics card by default. You will need to set up the graphics card in Blenders preferences before it can be used for your renders. The preferences can be located under the edit many at the top of the interface, next to the File menu.
At the bottom of this menu, you will find the label for preferences, and by clicking on it you will bring up a separate window for the preferences panel. To the side, you see a list of tabs that allow you to access the different subsections, the option we are looking for has the ‘system’ label.
When you select this tab you will have the ability to determine what hardware you want to use for your renders under cycles render devices. You need to decide which method you want to use for rendering, as different graphics cards have different means of providing the computational power necessary to render.
The first option is ‘None’ and is for those who only can or want to use the CPU for rendering. CUDA is available for Nvidia graphics cards and is the best option if you have an older model like a GTX 1060. Optix is also available Nvidia graphics cards and offers much better render times than CUDA in most scenarios. If you have a 2000 series or 3000 series GPU, then you will want to choose Optix rather than CUDA. The final option is for OpenCL which is the computational method used for AMD graphics cards.
You can choose whether to render on your CPU or GPU and can even render with both if you want to. If you have more than one graphics can, you can select any number of the graphics cards that you have installed, but can only select one method for rendering (Optix, OpenCL etc). When you are ready close the panel to get back to Blender itself.
Your GPU is now available to use with Cycles but you still have one more step. Go to the render tab in your properties panel and change the render engine from Eevee to Cycles. Go to where it says device and change from your CPU to your GPU. If you selected both before in the system preferences, they will both be used to render provided you select GPU in the properties.
How To Change The Handle Types For Keyframes?
Animating in Blender requires us to not only create keyframes for our animations but also manipulate them by changing the interpolation of those frames and how they interact. The manual
How Does Interpolation Work In The Graph Editor?
Animation in Blender requires using keyframes to define the start and end points of an animation based on a changed value. The graph editor allows us to control the animation’s
Creating A Bouncing Ball Animation In Blender?
If you are learning about 3D animation, then one of the first animations that you are likely to create is a bouncing ball. There are several youtube tutorials out there