So the other day I was looking at Adobe Premiere on a Mac when I noticed it had three rendering
settings instead of just the two that my Windows machine had.
I was expecting the Mercury Playback Engine GPU Acceleration with (OpenCL) option because
it had an AMD Graphics card in it, but what I wasn’t expecting was the GPU Acceleration
(Metal) option.
This led me to the inevitable question of, which should I use.
I did some online looking and wasn’t able to find the answer so I decided to test it
out myself.
First a little background for the uninitiated in hardware acceleration rendering.
When you want to publish a video, you first need to set it to render to the format you
want, usually this is h.264 for web publishing because it’s a small size and high quality.
Computers take all of the edits you’ve done, apply any effects, such as stabilization,
filters or lighting changes, and then combine them all into an output of your selected format.
Some of these video effects can be done faster on the Graphics Card due to its streamlined
nature compared to using just the normal CPU.
In order for the software, in this case Adobe Media Encoder, to use the graphics card, it
must use an Application Program Interface or API.
This generally comes in 2 flavors, CUDA supported by Nvidia cards, or OpenCL which is used by
AMD Cards and Intel Integrated Graphics.
However, starting in 2014, a 3rd option became available for Apple based products called
Metal.
Metal essentially does the same thing as CUDA and OpenCL, but is created by Apple.
It is convenient because it provides a similar API for iPhones, iPads, Macs and AppleTVs.
So, which should you choose when rendering using Adobe products on a Mac?
Well, for my test I made a 5 minute test video by combining 5 separate videos each using
a different codecs.
2 of these were shot in 1080p and the other 3 were shot in 4k.
One was also a different frame rate.
I then applied an effect to each video, some that were GPU accelerated and some that were
not.
Specifically, the GPU accelerated effects were: Fast Blur, Invert, and Warp Stabilizer.
The non-accelerated effects were: Channel Blur, lighting effects and just for fun I
reversed one of the videos, to make it run backwards.
The point was, I wanted to simulate a mixed workload that wouldn’t favor one rendering
method in particular.
I selected the default Youtube 1080p HD setting for my output.
I ran the test 3 times using OpenCL, Metal and Software Only, which doesn’t use GPU
acceleration at all.
I performed the tests with all other programs turned off.
For the hardware, I chose the absolute top end 27 inch iMac model that Apple makes which
comes with a 4 gigahertz quad-core Intel i7 6700k Skylake processor, 32 gigabytes DDR3
SDRAM, 1 terabyte of Flash Storage and an AMD Radeon R9 M395X graphics card with 4 gigabytes
of video memory.
I also ran the tests on a Mid 2015, 15 inch Macbook Pro with more modest specs.
It has a 2.2 gigahertz quad-core Intel i7 Haswell processor, 16 gigabytes DDR3L onboard
memory, 256 gigabytes of PCIe based flash storage and it was using the integrated Intel Iris
5200 Pro graphics with 1536 megabytes of v-ram.
This way we can see the effects of Metal on both a dedicated AMD card and Intel integrated
graphics.
I was pretty surprised by the results.
I was expecting OpenCL and Metal to be close, which they are not.
I definitely wasn’t prepared for Metal to actually take longer on the iMac than the
CPU only.
The Macbook Pro scales nicer with the Intel Graphics.
What this says to me is that Apple and Adobe still has a lot of work to do on the Metal
API and that I recommend using the OpenCL option in Adobe.
This shouldn’t be too surprising though because OpenCL has been around for 5 years
longer than Metal.
While this video was intended just to test OpenCL vs Metal, I couldn’t leave it there.
I wanted to know how my Windows computer compared to the top end iMac.
What differences would I see between a 1600 dollar PC and a 4000 dollar iMac.
Well, for starters, my Windows PC has a 6700k 4 gigahertz Intel i7 Skylake processor, that’s
the same one that’s in the iMac, 32 gigabytes of DDR4 RAM, again the same amount that’s
in the iMac.
The fact that it is DDR4 doesn’t matter as shown by the Linus Tech Tips video I have
linked in the video description below.
It has a Samsung 850 EVO 500 gigabytes SSD which is slower than the iMac and finally
it has an Nvidia GTX 1080 Founders Edition graphics card with 8 gigabytes of GDDR5X v-ram.
Now before I hear you complain that these graphics cards aren’t comparable because
one is much newer, just remember that this is the highest graphics card available on
an iMac.
So, running the same test using CUDA acceleration and then software only, here are the results
compared to the OpenCL results for the Macs.
It’s no surprise to see that the Nvidia GPU took the cake, it being a more powerful
card, but what I wanted to point out here is how much faster the CPU was on a Windows
machine.
Not only was it almost the same speed as the CUDA accelerated times, but it was nearly
30 minutes faster than the exact same CPU on the iMac.
Why the discrepancy between the PC and the Mac?
Well, the iMac has a much smaller enclosure and can’t effectively cool it’s components
as well as a tower PC.
When it gets too hot, such as when rendering video files, it has to thermal throttle the
CPU down to a slower speed so that it doesn’t overheat.
This means you’re not always getting all of those gigahertz you paid top dollar for.
A well ventilated tower PC doesn’t have this problem and the CPU can run at full speed
the entire time.
To bring this all together, currently, if you want to use Adobe to edit and process
videos on a Mac, make sure to set it to Render with OpenCL GPU acceleration turned on.
And I’m not knocking Macs because they do have a lot of great features, but if you’re
trying to decide what to spend your money on for a video editing workstation, you could
save yourself nearly 2000 dollars on a high end Windows PC and 4K monitor over an iMac
and see better performance to boot.
Thanks for watching.
If you found this video interesting, make sure to give it a thumbs up.
If you think I missed something or want to see a different test, tell me in the comments.
Don’t forget to subscribe and after you’ve done all of that, check out one of our other
videos up here.
I’ll see you next time.