Premiere Pro 14.2 H.264 and H.265 Hardware Encoding PerformanceWritten on June 4, 2020 by Matt Bach
TL;DR: Premiere Pro 14.2 H.264/H.265 Hardware Encoding Performance
Premiere Pro has supported H.264/H.265 hardware encoding for a long time, but it was limited to Intel CPUs that supported Quicksync. In the new 14.2 version, Adobe has added GPU-based hardware encoding that supports most modern GPUs from both NVIDIA and AMD.
Exactly how much faster this new hardware encoding is over software varies based on your system hardware, source media, and export setting. However, we saw on average around a 2x improvement in export times, but in some cases, it was more than 5x faster with only a minimal difference in video quality.
With the launch of Premiere Pro 14.2, Adobe has added support for GPU-based H.264/H.265 (HEVC) hardware encoding which allows you to utilize specialized hardware built into NVIDIA and AMD GPUs to improve export performance when exporting to H.264 and H.265.
In previous versions of Premiere Pro, hardware encoding was supported, but only via Intel Quicksync. This implementation worked pretty well, but Quicksync is only available in Intel's consumer and mobile processor families. This meant that high-end Intel systems with X-series processors - and all AMD systems - did not have an option for hardware encoding. Quicksync is still supported if you do not have a compatible GPU, but support for AMD and NVIDIA GPU-based hardware encoding will not only allow almost everyone to have a method to greatly improve performance when exporting to H.264 and H.265, but should also be significantly faster than Quicksync.
If you want to get into the details of this feature (including how to use it and what GPUs are supported), Adobe has a blog post with additional information that we recommend checking out.
A few months ago, we published some initial testing of this feature while it was still in beta, but now that it is fully released, we decided to do a much more in-depth analysis. We want to see how the performance changes when exporting to different resolutions and bitrates of both H.264 and H.265, as well as how the performance changes with different CPUs and GPU models from both NVIDIA and AMD.
Premiere Pro workstations
Puget Systems offers a range of powerful and reliable systems that are tailor-made for your unique workflow.
Listed below are the specifications of the systems we will be using for our testing:
|Intel Z490 Test Platform|
|CPU||Intel Core i9 10900K
Intel Core i5 10600K
|CPU Cooler||Noctua NH-U12S|
|Motherboard||Gigabyte Z490 Vision D|
|RAM||4x DDR4-2933 16GB (64GB total)
(Set to 2666Mhz for 10600K)
|AMD TRX40 Test Platform|
|CPU||AMD TR 3970X|
|CPU Cooler||Noctua NH-U14S TR4-SP3|
|Motherboard||Gigabyte TRX40 AORUS PRO WIFI|
|RAM||4x DDR4-2933 16GB (64GB total)|
*All the latest drivers, OS updates, BIOS, and firmware applied as of June 1st, 2020
To see how well GPU-based hardware encoding works, we will be using four different CPUs paired with five different GPUs from both AMD and NVIDIA. We will also include software encoding to act as a baseline for each platform and Intel Quicksync on the Intel 10th Gen CPUs which results in 26 different hardware configurations that we will be testing.
Note that in order to test Quicksync, we had to roll back to Premiere Pro 14.0.3 since we couldn't find a way to force hardware encoding to use Quicksync instead of the GPU in Premiere Pro 14.2.
For our testing, we used the "Lumetri Color" sequences from our PugetBench for Premiere Pro benchmark which includes 4K H.264 150Mbps 8bit, ProRes 422, and RED media as well as a "4K Heavy GPU Effects" sequence that is designed to put a heavy load on the GPU. Since we want to see if there is a difference between exporting to H.264/H.265 and if the export settings affect performance, we will be exporting with the following settings in both hardware and software mode:
- H.264 40Mbps UHD (3840x2160)
- H.264 16Mbps HD (1920x1080)
- H.264 8Mbps HD (1920x1080)
- HEVC 40Mbps UHD (3840x2160)
- HEVC 16Mbps HD (1920x1080)
- HEVC 8Mbps HD (1920x1080)
This combination of CPU, GPU, source media, and export settings results in over 600 data points which should give us a great idea of how this new feature performs in a variety of situations.
Raw Benchmark Results
While we are going to go through our analysis of the testing in the next section, we always like to provide the raw results for those that want to dig into the details. If there is a specific codec or export setting you tend to use in your workflow, examining the raw results for that task is going to be much more applicable than our more general analysis.
Benchmark Analysis: GPU Accelerated H.264/H.265 Encoding
When we started our testing, we had the hope that the results would be fairly consistent with similar performance gains no matter what your source media and export settings. Unfortunately, that ended up not being the case and there are a ton of nuances we found in our testing.
So, buckle up and get ready for a lot of reading if you want to fully understand how this new feature performs with different media, export settings, CPUs, and GPUs.
Before we really get into the weeds, we wanted to give a look at the overall average and maximum performance gain we saw with each GPU compared to software encoding.
Looking at the average across all our testing, the results are decent with Intel Quicksync providing a roughly 20% increase in performance, AMD GPUs providing a 30-45% increase, and the NVIDIA GPUs ranging from 40% to almost a 2x increase in performance.
While a 1.3-2x increase in export performance is nothing to scoff at, it really isn't a fair way to measure hardware encoding since it is combining all of the results - including those from situations that are far from ideal for hardware encoding. This includes the tests using a powerful AMD Threadripper 3970X CPU (which has so much power that even software encoding is pretty speedy) as well as our 4K RED and "4K Heavy GPU Effects" sequences that are already putting a heavy load on the video card on top of the hardware encoding.
Another way we can look at the results is the maximum performance gain over software encoding from all 600 data points. When we do this, it really shows the potential of GPU hardware encoding with the AMD GPUs proving a 3-3.5x increase in performance and the NVIDIA GPUs providing a 3.5-5.5x increase!
This of course is a bit of an optimistic way to look at the results (you might call it cherry-picking), but if you want to know just how much faster hardware encoding can be, this should give you a good idea. In general, however, most people will likely experience something between the average and maximum performance gains. To get a more solid feel for the nuances of this technology we have to dive into the results in more detail:
Working with H.264 media may not be ideal from an editing standpoint, but it is by far the most common codec used since it is what most cameras record natively with. If we separate out the results for each CPU/GPU combination when exporting to "H.264 40Mbps UHD", we get a great look at how the performance might change with different CPU and GPU combinations.
What is interesting here is that the export performance (we are reporting in FPS) is actually fairly consistent across each CPU. There is, however, a big difference in performance between each of the video cards. Where the AMD Radeon RX 5700XT, Vega 64, and NVIDIA GTX 1660 Ti were able to export at around 100 FPS, the NVIDIA RTX 2070S 8GB and RTX 2080 Ti were able to export about 30-50% faster.
What this means is that if you use similar media and export settings as this test, your CPU will have almost no bearing on how fast you can export. Now, this is actually one of the best-case scenarios for hardware encoding that we found, so to keep things in perspective let's also look at one of the worst cases:
If you often work with RED media, hardware encoding can definitely still improve your export times, but we found that the CPU was often the limiting factor.
As you can see in the chart above, the export performance is pretty much locked to the CPU rather than the GPU. The Core i5 10600K hit a wall at about 55 FPS, the Core i9 10900K at about 95 FPS, and the Ryzen 3900X at about 110 FPS. Only the AMD Threadripper 3970X really showed a difference between the various GPUs, and even then, the NVIDIA RTX cards were only a small 10% faster than the AMD Radeon GPUs.
The why behind this is pretty simple: at a certain point, encoding to H.264 simply stops being the bottleneck, and processing the RED footage is the limiting factor. Even though Premiere Pro does use the GPU for debayering RED footage (which should make higher-end GPUs better), it still uses the CPU for decoding which makes it very important to have a powerful CPU. And even if Premiere Pro implements GPU-based decoding for RED footage, if it is anything like what we saw in DaVinci Resolve, if you have a mid-range and above CPU it is better to leave decoding on the CPU in order to prevent your GPU from becoming a bottleneck and actually making performance worse.
To round out our analysis of the new GPU-accelerated hardware encoding feature, we are going to leave you with a chart looking the average performance gain with each CPU/GPU combination, as well as a number of charts looking at the performance gain with each CPU and source media individually.
There is a lot going on in these charts, but here are some of our observations after staring at the data for a few hours:
1) The performance gain over software encoding is overall about the same when exporting to both H.264 and H.265, although H.265 still often takes longer since it is a much harder codec to process.
2) The largest performance gains tended to be when encoding our 4K source media to 4K H.264/H.265 40Mbps. Likely, this is due to the fact that there is no downscaling that needs to happen like there is when exporting 4K source media to 1080p, but it may also be due to the higher bitrate.
3) Intel platforms are slightly better for encoding H.264 source media to H.264 (and presumably also for H.265 -> H.265) since they have Intel Quicksync which helps accelerate decoding of the source footage. It is significant enough that on our tests with H.264 source media, the Intel Core i5 10600K 6 Core was often as fast or faster than the AMD Threadripper 3970X 32 Core. This means that if you work with a lot of H.264/H.265 media and want to minimize export times, you should stick with an Intel-based system with Quicksync - at least until Adobe adds GPU-based H.264/H.265 decoding.
4) In general, the largest performance gains will be seen on systems with relatively underpowered CPUs compared to their GPU. It varies based on your source media and export settings, but where we saw a maximum 5.5x increase in export speed with the Core i5 10600K 6 Core, the AMD Threadripper 3970X 32 Core system only saw at most a 3x increase in performance. The Threadripper system is certainly overall much faster at exporting (with the exception of H.264 source media as noted in the previous point), but the relative performance gains are not quite as significant.
5) You have to be a little careful about using hardware encoding if you use a lot of GPU accelerated effects. At a certain point, you are going to turn your GPU into a major bottleneck, which can result in worse performance with hardware encoding than software encoding. You have to take it pretty far, however, so this is not something most people will experience in the real world.
Software vs. GPU Hardware Encoding Quality
For those that are not aware, there is an issue with hardware-accelerated encoding - the quality is technically a bit worse than software encoding. For some people, the quality difference is so small that it doesn't matter, while for others it is a major issue. Which side of the fence you fall on is completely up to you and your workflow, so we are not going to make any firm declarations about whether it is acceptable or not.
What we will do is allow you to download sample exports from our testing so you can make that call yourself. Of course, there is no substitute for doing a direct comparison yourself with your own projects since everything from your source media, export settings, to the specific effects and transitions used can affect the quality. If you do download our samples, we found that the largest difference in quality shows up on the road pavement and the writing on the side of the van as it drives by. Also, be sure to compare the quality from both the NVIDIA and AMD hardware encoding clips as it is slightly different.
For those that don't want to download and examine these clips, we will say that the quality difference appears to be extremely small in our test cases. The exports at a lower bitrate show more of a difference that at higher bitrates, but in most cases, it is hard to really decide which is better in a blind test unless you zoom in quite a bit. The only area that we noticed the difference was on the road's paved surface which has a ton of fine details that can be lost at lower bitrates with hardware encoding.
One thing to keep in mind is that our testing was done with "VBR, 1 pass" since hardware encoding currently doesn't support 2 pass encoding. If you were to use 2 pass encoding with software encoding, the quality difference would be a bit more pronounced (although it would also take significantly longer).
How well does Hardware Encoding work?
Overall, the new GPU-based H.264/H.265 (HEVC) hardware encoding in Premiere Pro is very impressive and a significant improvement over using Intel Quicksync. Depending on your source media, export settings, and how powerful of a CPU/GPU you have, the performance gains may only be a 1.5-2x increase in export performance on average, but in some cases, we saw up to a 5.5x improvement in export times.
From a quality perspective, we only noticed a slight loss of very fine detail on surfaces like road pavement. This small difference in quality may not be acceptable for master copies depending on the type of work you do, but it will likely be completely unnoticeable if you upload your videos to YouTube or other video streaming services.
One great aspect of this feature is that since GPUs are much simpler to upgrade than processors (which will usually require at least a new motherboard if not new RAM as well), this gives Premiere Pro users a much easier upgrade path if they wish to improve performance. This may only be for encoding (exporting) at the moment, but we have to imagine that at some point Adobe will also make GPU-accelerated H.264/H.265 decoding available as well.
If you try out hardware encoding on your own projects, let us know what you think in the comments! How much faster was it, and did you see any appreciable quality difference?
Premiere Pro Workstations
Puget Systems offers a range of powerful and reliable systems that are tailor-made for your unique workflow.