5 Tips To Improve Performance in DaVinci Resolve

5 Tips To Improve Performance in DaVinci Resolve

Stormy weather and decision making

Remember the days before GPS? The not-so-good old days, back when paper maps and outdated road signs were the only way to find new places?

For those of you who never experienced life before Google Maps and AI voice assistants, let me describe what it was like. You were completely dependent on your own sense of direction, your familiarity with the route, and your ability to clearly see what was around you.

This actually worked ok as long as conditions were clear and you already knew how to get where you were going.

But as soon as the sun went down or the weather turned bad, your ability to navigate fell off a cliff (and so did your car if you weren’t careful). And the worse the weather, the harder it was to make decisions about which way to go.

For post professionals, that’s not too different from trying to make creative decisions without real-time playback in your NLE.

Think about the last time you had to cut, grade, or mix without smooth playback. Not only was it slow and frustrating, but it likely hampered your creative decision-making. Choosing the best take of an actor’s performance, or deciding where to cut a scene based on emotional cues is difficult when you can’t watch a video smoothly.

When it comes to finding your way in a timeline, real-time playback is just as important as GPS when driving in a storm. Without clear vision, it’s challenging to make effective creative decisions for your film.

In today’s article, I’ll show you the five best ways to optimize performance in DaVinci Resolve, so your creative decisions are as smooth and real-time as possible.

How to measure playback performance

Before you can optimize the playback performance of DaVinci Resolve, you need to know how it’s doing already.

In Resolve, there is a Performance Indicator Light and a Frames Per Second (FPS) display in the top left corner of the main viewer window.

As you might have guessed, the Performance Indicator tells you whether overall system resources can obtain real-time playback, or a smooth playback experience, and the FPS display tells you how many frames the system can deliver every second.

A green performance indicator means the system is achieving real-time playback, while a red indicator means that there are not enough system resources available for real-time playback.

Note: A red light might indicate a limitation on CPU, GPU, or storage resources, or any combination of the three.

Resolve’s GPU status indicator and FPS display are in the top left of the main viewer window.

Luckily, if you find yourself in the uncomfortable situation where you can’t deliver real-time playback, there are a number of features and options available to enhance your performance without any change to the final export quality.

While it may seem redundant to have multiple features for what seems like a similar purpose, each feature is unique and useful in different situations and hardware configurations.

1. Performance Mode & other playback tweaks

Performance Mode is a fantastic feature that was recently added to DaVinci Resolve.

It intelligently analyzes your computer’s hardware configuration and automatically adjusts Resolve’s image processing under the hood. This delivers smoother playback without sacrificing the resolution or bitrate of the final output.

In other words, Performance Mode gives you better performance and a smoother creative experience without lowering the quality of your final video, even when your workstation is a bit out-of-date.

Yes, sharp-eyed finishing artists and colorists may notice a slight reduction in visual quality in the onscreen viewers, but Blackmagic gives us a few controls to tweak Performance Mode.

By default, Performance Mode is automatically enabled, but you can adjust or disable it entirely in the Playback Settings tab of the User Preferences menu (DaVinci Resolve > Preferences > Users > Playback Settings).

I recommend two useful settings in this menu called “Hide UI Overlays” and “Minimize interface updates during playback.” These settings sacrifice on-screen controls (such as mouse, power windows, and split-screen controls) during playback, which can usually squeeze out a few extra frames-per-second from the GPU.

One other important tidbit to know. While Resolve and Resolve Studio are very similar, Resolve Studio utilizes improved handling for common compressed codecs such as H.264 and H.265 and supports hardware acceleration.

This can significantly speed up playback, transcoding, and exports of those formats. But this improved performance is not included in the free version of Resolve, which might slow down performance slightly if you’re using those codecs..

Performance Mode

2. Proxy Mode

First, let’s clarify, Proxy mode is not for the typical “online/offline” proxy workflow.

On the contrary, Resolve’s Proxy mode temporarily reduces the processed resolution of an entire timeline, but without impacting the actual assets or sequence settings.

It’s like changing the timeline resolution within Project Settings from UHD to HD while working (edit, color grading, etc.) and then switching back to UHD before final output. All your assets and effects are still UHD data, they’re just being processed as if they were HD during playback.

Since DaVinci Resolve was designed to be resolution independent, you can make these adjustments to the project without fear of losing asset/sequence quality. So don’t worry, you can use Proxy Mode without it throwing off your finely-tuned, shot-specific adjustments, like keyframes, power windows, tracking, etc.

Note: Temporarily changing the timeline resolution is essentially like making your own custom proxy mode, if you want more control. Just don’t forget to change it back before render.

The controls for Proxy Mode via the Playback menu, where you’ll find two options: Half Resolution and Quarter Resolution.

I recommend trying Half Resolution first to see if you get a green GPU Status indicator during playback. If that’s not enough, Quarter Resolution will almost certainly do the trick (unless you’re working with 8K RED Helium footage).

Quarter Resolution may look a bit blurry, but smooth playback is usually much more important to your creative decisions than the extra pixels.

Unfortunately, if your specific performance limitations are due to your source media, Proxy Mode probably won’t be much help.

Fortunately, Resolve has other tricks for just this scenario.

3. Create optimized media

Optimized Media is basically Resolve’s equivalent of offline proxies.

It takes the original assets, and creates lower-quality versions that you work with, before returning to the original quality assets before output.

This is especially useful if you are using computationally-intensive formats, such as heavily compressed H.264/H.265 (mirrorless cameras, drones, and cell phones), high-resolution raw (RED, Blackmagic, Arri cameras), and even OpenEXR or DPX image sequences (like are used in VFX workflows).

Create Opt Media v3

Unlike a lot of proxy workflows, Resolve automatically manages the Optimized Media process without much user input or technical setup.

Just right click the clips you’d like to optimize and then select “Generate Optimized Media.” Resolve will intelligently select the best resolution for the proxy media (based on the timeline resolution), and then create the proxy assets directly on the scratch disk.

You can even utilize a Smart Bin to intelligently sort through media to help you optimize certain media, such as RED and CinemaDNG camera raw files.

The best part is that there is no need relink the original assets before output. Resolve’s process takes away most of the hassle generally associated with proxy workflows.

You can easily switch back and forth between the original (non-proxy) source media and the optimized (proxy) files via the “Use Optimized Media” toggle under the Playback Menu.

If you’d like to customize the options used to create your optimized “proxy” media, you can do that in the Project settings (Project Settings > Master Settings). Like other proxy workflows, you can manually select the resolution and codec used, which gives you much finer control of your workflow.

For example, if you’re utilizing raw camera sources and want to start preliminary grading on the optimized files, you can specify ProRes 4444 or DNxHR 444 to avoid clipping/data loss. That will give you plenty of room to explore your grading options without the computational burden of raw.

You can even force Resolve to utilize the Optimized Media as the source for exporting a “review” screener, like you might upload to Frame.io. This can radically improve export speeds.

These settings live in the Deliver tab. Just check the “Use optimized media” option in the “Custom” video options preset under the “Advanced Settings.”

4. Caching

DaVinci Resolve has the ability to cache, or “pre-render,” its entire timeline to a more processor-friendly format with all the edits, color grading, and effects “burned-in” to a single stream of media.

This typically results in smooth, seamless playback, though it comes at the expense of render times and storage space.

Despite the added render requirement, caching can help with a variety of the issues we’ve discussed already, from processor-intensive media to an effects heavy timeline, and can even help your aging workstation achieve real-time playback.

On the edit page, you can see if clips are cached by the red bar that appears along the bottom of the timeline ruler. A blue bar indicates the clip has been successfully cached, while a red bar indicates the clip has yet to be cached.

Resolve Page Render Cache

On the color page, you will notice similar red and blue indicators on the nodes. These indicate that a specific node is cached.

You’ll notice caching occurs whenever you manually play back uncached clips (marked in red). A feature called Background Caching will also kick in whenever the computer is idle for more than 5 seconds.

You can adjust the settings for caching within the Project Settings  Project Settings > Master Settings > Optimized Media and Render Cache).

There are two main options for caching: Smart Mode and User Mode.

Smart Mode provides a “set-it-and-forget-it” style of caching, which automatically enables caching for known performance-intensive media and effects, while still providing some manual control over caching on individual nodes.

With User Mode, caching isn’t set up automatically, and leaves the caching process up to you.

There are also some fairly advanced workflow settings, such as utilizing the “Render Cache Fusion Output.” This setting pre-caches raw media at the timeline resolution in addition to the full quality resolution, and which avoids having to debayer the media during output.

5. Combine and conquer

One of the most powerful aspects of these features is they don’t need to be used independently of each other. You can easily combine several of these features to optimize your workflow and obtain real-time playback.

For example, you may create optimized media of your 4.6K BlackMagic raw media to improve their playback, while temporarily using proxy mode to improve performance of the UHD timeline. You can then add caching into the mix to improve the performance of clips with temporal noise reduction and third-party OpenFX effects applied.

Each of these five tools and strategies functions well on their own, but can be combined for greater effect when needed.

Conclusion

As you can see, DaVinci Resolve is not a one-trick pony in terms of performance optimization. It offers a variety of features and settings that you can fine tune for your specific computer or workflow.

If you try one feature and it doesn’t work, be sure to try one of the others, and don’t forget to mix and match. Resolve is an incredibly adaptable application, and with these features you can realize your creative vision even if you don’t have a maxed-out Mac Pro.

Do you use any other performance hacks in DaVinci Resolve? Let us know in the comments.

Thank you to Jason Bowdach for contributing this article.

Jason Bowdach is a professional colorist, finishing artist, and workflow engineer based in Los Angeles, CA. He's worked with commercial brands such as Adobe, Google, and LensCrafters and his work has been featured at the Sundance and Tribeca Film Festivals. In 2019, he launched PixelTools, a company dedicated to making color grading faster, easier and more approachable.

Interested in contributing?

This blog relies on people like you to step in and add your voice. Send us an email: blog at frame.io if you have an idea for a post or want to write one yourself.