GPU Rendering - Blender 4.3 Manual (2024)

Edit this page

Toggle table of contents sidebar

GPU rendering makes it possible to use yourgraphics card for rendering, instead of the CPU. This can speed up renderingbecause modern GPUs are designed to do quite a lot of number crunching.On the other hand, they also have some limitations in rendering complex scenes, due to more limited memory,and issues with interactivity when using the same graphics card for display and rendering.

To enable GPU rendering, go into the Preferences ‣ System ‣ Cycles Render Devices,and select either CUDA, OptiX, HIP, oneAPI, or Metal. Next, you must configure each scene touse GPU rendering in Properties ‣ Render ‣ Device.

Rendering Technologies

Blender supports different technologies to render on the GPU depending on the particular GPU manufacturerand operating system.

CUDA – NVIDIA

CUDA is supported on Windows and Linux and requires aNvidia graphics cards with compute capability 3.0 and higher. To make sure your GPU is supported,see the list of Nvidia graphics cardswith the compute capabilities and supported graphics cards.

OptiX – NVIDIA

OptiX is supported on Windows and Linux and requires a Nvidia graphics cards with compute capability 5.0 and higherand a driver version of at least 470. To make sure your GPU is supported,see the list of Nvidia graphics cards.

OptiX takes advantage of hardware ray-tracing acceleration in RTX graphics cards, for improved performance.

GPU acceleration for OpenImageDenoise is available for compute capability 7.0 and higher, which includesall NVIDIA RTX cards.

HIP – AMD

HIP is supported on Windows and Linux and requires aAMD graphics card with the Vega architecture or newer. Both discrete GPUs and APUs are supported.

Supported GPUs include:

Minimum driver versions:

  • Windows: Radeon Software 21.12.1 or Radeon PRO Software 21.Q4

  • Linux: Radeon Software 22.10 or ROCm 5.3

Please refer to AMD’s website for moreinformation about AMD graphics cards and their architectures.

On Windows, experimental hardware ray-tracing support is available with the most recent drivers.This can be enabled in the preferences.However there are currently known issues regarding motion blur, hair rendering and degenerate triangle shapes.

GPU accelerated denoising is available on discrete Radeon RX 6000 and Radeon RX 7000 GPUs.

oneAPI – Intel

oneAPI is a computation library that is supported on Windows and Linux and requires aIntel® Arc™ graphics card with the Xe HPG architecture.Hardware acceleration for ray-tracing and denoising is supported.

Supported GPUs include:

  • Intel® Arc™ A-Series

Minimum driver versions:

  • Windows: Intel Graphics Driver XX.X.101.5518

  • Linux: intel-level-zero-gpu package 1.3.27642,typically available through the intel-compute-runtime package XX.XX.27642.38

Please refer to Intel’s websitefor more information about Intel graphics cards and their architectures.

GPU accelerated denoising is available on all supported GPUs.

Metal – Apple (macOS)

Metal is supported on Apple computers with Apple Silicon, AMD and Intel graphics cards.macOS 13.0 or newer is required to support all features and graphics cards.

Using AMD graphics cards with Metal has a number of limitations. Light Trees and Shadow Caustics are not supported, and the Principled Hair BSDF causes poorrendering performance.

GPU accelerated denoising is available on Apple Silicon.

Limitations

  • Path Guiding is not supported on any GPU.

  • Open Shading Language is only supported for OptiX, with some limitations listed in the documentation.

Frequently Asked Questions

Why is Blender unresponsive during rendering?

On older GPU generations, graphics cards can only either render or draw the user interface.This can make Blender unresponsive while it is rendering.Heavy scenes can also make Blender unresponsive on newer GPUs,when using a lot of memory or executing expensive shaders, however this is generally less of a problem.

The only complete solution for this is to use a dedicated GPU for rendering, and another for display.

Why does a scene that renders on the CPU not render on the GPU?

There may be multiple causes,but the most common one is that there is not enough memory on your graphics card.Typically, the GPU can only use the amount of memory that is on the GPU(see Would multiple GPUs increase available memory? for more information).This is usually much smaller than the amount of system memory the CPU can access.With CUDA, OptiX, HIP and Metal devices, if the GPU memory is full Blender will automaticallytry to use system memory. This has a performance impact, but will usually still result in a faster renderthan using CPU rendering.

Can multiple GPUs be used for rendering?

Yes, go to Preferences ‣ System ‣ Compute Device Panel, and configure it as you desire.

Would multiple GPUs increase available memory?

Typically, no, each GPU can only access its own memory.

The exception is NVIDIA GPUs connected with NVLink, where multiple GPUs can share memory at a small performance cost.This is can be enabled with Distributed Memory Across Devicesin the preferences.

What renders faster?

This varies depending on the hardware used. Different technologies also have different compute timesdepending on the scene tested. For the most up to date information on the performance of different devices,browse the Blender Open Data resource.

Error Messages

In case of problems, be sure to install the official graphics drivers from the GPU manufacturers website,or through the package manager on Linux.The graphics drivers provided by the computer manufacturer can sometimes be outdated or incomplete.

Error: Out of memory

This usually means there is not enough memory to store the scene for use by the GPU.

Merknad

One way to reduce memory usage is by using smaller resolution textures.For example, 8k, 4k, 2k, and 1k image textures take up respectively 256MB, 64MB, 16MB and 4MB of memory.

The NVIDIA OpenGL driver lost connection with the display driver

If a GPU is used for both display and rendering,Windows has a limit on the time the GPU can do render computations.If you have a particularly heavy scene, Cycles can take up too much GPU time.Reducing Tile Size in the Performance panel may alleviate the issue,but the only real solution is to use separate graphics cards for display and rendering.

Another solution can be to increase the time-out,although this will make the user interface less responsive when rendering heavy scenes.Learn More Here.

Unsupported GNU version

On Linux, depending on your GCC version you might get this error.See the Nvidia CUDA Installation Guide for Linuxfor a list of supported GCC versions. There are two possible solutions to this error:

Use an alternate compiler

If you have an older GCC installed that is compatible with the installed CUDA toolkit version,then you can use it instead of the default compiler.This is done by setting the CYCLES_CUDA_EXTRA_CFLAGS environment variable when starting Blender.

Launch Blender from the command line as follows:

CYCLES_CUDA_EXTRA_CFLAGS="-ccbin gcc-x.x" blender

(Substitute the name or path of the compatible GCC compiler).

Remove compatibility checks

If the above is unsuccessful, delete the following line in/usr/local/cuda/include/host_config.h:

#error -- unsupported GNU version! gcc x.x and up are not supported!

This will allow Cycles to successfully compile the CUDA rendering kernel the first time itattempts to use your GPU for rendering. Once the kernel is built successfully, you canlaunch Blender as you normally would and the CUDA kernel will still be used for rendering.

CUDA Error: Kernel compilation failed

This error may happen if you have a new NVIDIA graphics card that is not yet supported bythe Blender version and CUDA toolkit you have installed.In this case Blender may try to dynamically build a kernel for your graphics card and fail.

In this case you can:

  1. Check if the latest Blender version(official or experimental builds)supports your graphics card.

  2. If you build Blender yourself, try to download and install a newer CUDA developer toolkit.

Normally users do not need to install the CUDA toolkit as Blender comes with precompiled kernels.

GPU Rendering - Blender 4.3 Manual (2024)

FAQs

How to use GPU when rendering in Blender? ›

To enable GPU rendering, go into the Preferences ‣ System ‣ Cycles Render Devices, and select either CUDA, OptiX or OpenCL. Next, you must configure each scene to use GPU rendering in Properties ‣ Render ‣ Device.

Is GPU rendering faster than CPU Blender? ›

GPU rendering makes it possible to use your graphics card for rendering, instead of the CPU. This can speed up rendering because modern GPUs are designed to do quite a lot of number crunching.

Is CUDA or OptiX better? ›

OptiX has a 60-80% speed advantage over CUDA when using the same hardware. However, CUDA tends to be faster when rendering simple scenes or using simple materials, while OptiX is faster for more complex scenes with lots of reflections and refractions.

How important is GPU for Blender? ›

There are some advantages to using GPU rendering over CPU rendering in Blender. GPUs are substantially better at 3D rendering than CPUs due to their optimization for graphics computations and parallel processing. If you use multiple GPUs in Blender, you are able to process many tasks simultaneously.

How do I set my GPU renderer? ›

On your device, go to Settings and tap Developer Options. In the Monitoring section, select Profile GPU Rendering or Profile HWUI rendering, depending on the version of Android running on the device. In the Profile GPU Rendering dialog, choose On screen as bars to overlay the graphs on the screen of your device.

Which GPU is best for Blender? ›

You're going to want an Nvidia GPU, Nvidia works better in blender and has hardware denoising support which is pretty useful. RTX 3070, 3080, 2080ti are all good options.

How many samples should I use in Blender? ›

If the animation is only going to be viewed at 720p, 100 samples is plenty. If the animation is going to be viewed in 4k (or possibly even 1080p) you will probably notice some slight flickering with only 100 samples. With an image, you can get away with far less samples than are needed for an animation.

Should I use Eevee or Cycles? ›

Choosing the Right Engine

If it is photorealism and rendering time isn't a constraint, then Cycles will be a great choice. But for quick renders, previews, and animation tests, Eevee is the best option.

Does CUDA cores help with rendering? ›

For instance, in gaming, CUDA cores can render graphics more quickly and efficiently, leading to smoother gameplay and more realistic visuals. In scientific computing, they can process large datasets and perform complex calculations at a much faster rate than traditional CPUs.

What is the minimum GPU for Blender? ›

Truly Portable
MinimumRecommended
OSDistribution with glibc 2.28 or newer (64-bit)
CPU4 cores with SSE4.2 support8 cores
RAM8 GB32 GB
GPU2 GB VRAM with OpenGL 4.3 (see below)8 GB VRAM

Does Blender use GPU by default? ›

In Blender, the GPU isn't used by default for rendering, so new artists might miss out on a lot of performance if they don't configure it correctly.

Which version of Blender is best for a low-end PC? ›

When working on a slow computer I highly recommend you to use eevee instead of cycles. Eevee is a render engine that was introduced to Blender in version 2.8 with the goal to achieve real-time rendering. It's way faster than cycles and still leads to stunning results.

References

Top Articles
Latest Posts
Article information

Author: Tyson Zemlak

Last Updated:

Views: 6224

Rating: 4.2 / 5 (43 voted)

Reviews: 90% of readers found this page helpful

Author information

Name: Tyson Zemlak

Birthday: 1992-03-17

Address: Apt. 662 96191 Quigley Dam, Kubview, MA 42013

Phone: +441678032891

Job: Community-Services Orchestrator

Hobby: Coffee roasting, Calligraphy, Metalworking, Fashion, Vehicle restoration, Shopping, Photography

Introduction: My name is Tyson Zemlak, I am a excited, light, sparkling, super, open, fair, magnificent person who loves writing and wants to share my knowledge and understanding with you.