Copy link to clipboard
Copied
Mercury Playback Engine ExplainedMercury Playback Engine is the given name for a group of improvments that is been built into Premiere Pro. See Adobe documentation on the topic here: Mercury Playback Engine (GPU Accelerated) renderer.
Those improvements includes:
- 64-bit application
- multithreaded application
- processing of some things using CUDA
- processing of some things using OpenCL
- processing of some things using Metal
The official and up-to-date list of the cards that provide CUDA, OpenCL, and Metal processing features is here.
Here's a list of things that Premiere Pro can process with CUDA, OpenCL, and Metal:
- scaling - (alternate link)
- deinterlacing
- blending modes
- color space conversions
That said, two new options for GPU accelerated encoding have been added recently, both of which use different tech than the Mercury Playback Engine:
An article on the Premiere Pro team blog based on the information and questions in this forum thread has been posted, please check that out.
Notes
As of June 2020, on macOS, CUDA processing for the Mercury Playback Engine been deprecated for Premiere Pro. Use Metal now.
Copy link to clipboard
Copied
Kevin,
The 460 is a slimmed down version of the 470. It is not faster. The 470 is the faster of the two cards.
One can only guess at the reason Adobe left this easy 'hack' available for use by many.
One could argue that:
1. the limited list of supported cards makes the development time, manpower and support less costly for Adobe, and
2. the 'hacked' cards using non-supported cards will show if and where problems may be without any effort from Adobe, apart from reading the forums, and
3. the talk about the 'hack' improves the commercial potential of CS5 for Adobe without any effort.
All three points are distinct benefits for Adobe.
Do you seriously think that a potential buyer of CS5, who currently has a GTX-480, would consider downgrading to a GTX-470 when he can see that 60% of the top-20 performers in the PPBM5 Benchmark are using a 'hacked' version of the 480? He would keep his 480 and not hesitate to buy CS5. Adobe meanwhile does not have to give costly support, does not have to do extensive testing to certify the card and still sells a license, so everybody is happy.
Copy link to clipboard
Copied
I see what you are saying but most people wouldn't know about the hack I only found out two days ago, infact I also only found out at the same time that if a card wasn't on the list mercury didn't work so I hacked my card and did the benchmark test 252 secs no too bad ?
Copy link to clipboard
Copied
Shame that this doesn't speed up rendering. That's the only bottleneck I have to deal with. 23.5 hour renders
making a 2 hr Blu-ray movie with unsharp mask and color correction filters. That ties
up a workstation for an entire day--if PPro doesn't crash on render--which it often does on long h.264 renders.
Copy link to clipboard
Copied
I've been running Premiere Pro CS5.5 on my system for about a year. Rendering was so slow that last week I bought an nVida GTX 580. I upgraded my power supply to 650w. I can now enable the MPE GPU Acceleration, but notice absolutely no difference in performance - all my timelines still have the red line, and applying effects (particularly colour correction) still takes hours. I'm running with 8GB of RAM, so I have no idea why I'm still struggling at the same old speed as before. Any help would be greatly appreciated.
Copy link to clipboard
Copied
Pictoprod,
If you're using Windows 7 and did not download the most current NVIDIA drivers, that may account for your lack of MPE acceleration. Go into Project Settings and make sure that 'MPE Hardware acceleration' is turned on.
The normal WHQL drivers with Windows 7 for the NVIDIA cards typically do not give you the CUDA acceleration you see.
Copy link to clipboard
Copied
Thanks for your help. I've gone into Project Settings and made sure
that the "Mercury Playback Engine GPU Acceleration" is on, but still no
change. And I followed the instructions which came with the card and
loaded the drivers from the accompanying CD. I wonder if my old onboard
graphics card might still be taking priority? Or perhaps there are
other elements of the system which are causing a bottleneck? It is
using an Intel Core i3 CPU - could that be the problem? I thought that
buying the 580 would allow me real-time rendering and better scrubbing.
I'm not too bothered about encoding quickly as I can leave it to do that
once I'm finished editing, but it's a real pain having to wait for ages
to see whether a colour correction has worked. I'm using two Sony
AX2000 cameras, so the native footage is AVCHD.
Copy link to clipboard
Copied
Grab the latest drivers from the NVIDIA site - that's usually best.
onboard system graphics - probably not, but you should check into it. You probably have to go into Bios to determine that.
Your RAM is okay but not great. Your CPU is okay, but not great. AVCHD is a big codec to decode so the fact that those two elements are only okay, is telltale.
finally, the 580 will not enable better scrubbing - this is a CPU function and scrubbing AVCHD is tough even for a desktop system because of the temporal nature of the codec. The GPU capabilities of MPE are strictly related to the effects you put on the clips.
If you can play AVCHD footage with no effects fine, then adding the 580 should allow you to play the same timeline with some effects.
Hope this helps,
Dennis
Copy link to clipboard
Copied
Thank you for your help, I appreciate it. I'll download the latest
NVIDIA drivers and see if that makes a difference. I should probably
upgrade my CPU and my RAM too. Any suggestions?
At the moment I'm working on a a project which has no effects added -
only a couple of dissolves, and the line is still red until I render,
which takes quite a while.
Copy link to clipboard
Copied
don't worry about the RED if it's playing. The green/yellow/red lines are immaterial when you're editing. The idea is as long as you can edit your footage, you're good.
As for an upgrade, there are too many choices to make a recommendation. However, a fast i7 and lots of RAM + your 580 will be a great system. Beyond that, it's up to you.
Copy link to clipboard
Copied
Thank you, you've been very helpful.
Shaun
Copy link to clipboard
Copied
Hi, one final question. My i3 processor says it is 3.5ghz. If I buy an
i7 at 3.5ghz will it make any difference? I'm already over budget
trying to speed Premiere up and don't want to waste any money
unnecessarily. I've just ordered four 4gb ram modules so that should
double my memory.
Many thanks.
Shaun
Copy link to clipboard
Copied
Dear Todd,
How do I select Mercury Playback engine instead of Software? I've seen the pulldown menu before but now I can't seem to find it.
Thank you,
Patrice Shannon
Copy link to clipboard
Copied
If I remember correctly it is in the Project settings under the file menu
Copy link to clipboard
Copied
------------
a lot of people think that 'Mercury' just refers to CUDA processing. This is wrong. To see that this was not the original intent, you need look no further than the project settings UI strings 'Mercury Playback Engine GPU Acceleration' and 'Mercury Playback Engine Software Only', which would make no sense if 'Mercury' meant "hardware" (i.e., CUDA).
--------------
so with the mercury playback software only there are still significant improvements in processing or functionality of PP but with CUDA there is even MORE speed due to using the hardware ( gpu and cuda ? )
how much of the gpu does the software ONLY use ?? in comparison to the gpu using the vram to take stress off the cpu processing ?
Copy link to clipboard
Copied
> how much of the gpu does the software ONLY use ?
None. That's the point. The term 'software' in this context refers to CPU-only processing.
CUDA is a technology (architecture, programming language, etc.) for a certain kind of GPU processing.
Copy link to clipboard
Copied
None. That's the point. The term 'software' in this context refers to CPU-only processing.
Well, this begs the question, then: why market and then include in the software the confusing phrase "Mercury Playback Engine?" I mean, I understand the desire for catchy slogans and stuff that can adorn ad slicks, but if you have access to the Mercury Playback Engine regardless of having an approved GPU or not, why bother? It seems it would be easier and more logical to simply say, "Premiere Pro CS5 is fast. Add a certain graphics card, and it will be even faster."
Endusers ultimately don't care about the names of underlying proprietary technologies. Sure, we all love to boast about a certain brand or another that we purchase or use, but "Mercury Playback Engine" isn't a brand. Tell them what they can do to squeeze more performance out of the software, and leave it at that. If Adobe wants to sell more copies of Premiere Pro, simply stop referring to MPE at all, and say, "Right out of the box, you have X; add a specific GPU and you have X+10."
PS: Todd, you should probably refer to the Mercury Playback Engine correctly, and not just Mercury... or Dennis will send you a nasty note
Copy link to clipboard
Copied
> Well, this begs the question, then: why market and then include in the software the confusing phrase "Mercury Playback Engine?"
That's a fine question for someone other than me. As you can probably guess, I wasn't one of the folks excited about giving a squishy and intrinsically confusing name to a set of loosely clustered features.
> It seems it would be easier and more logical to simply say, "Premiere Pro CS5 is fast. Add a certain graphics card, and it will be even faster."
Hey! You've been reading my email to the marketing department!
Copy link to clipboard
Copied
> one more question, with regard to Open GL
OpenGL is a different technology that is implemented through GPUs. It is not exclusive of CUDA; it's a different thing altogether, and a card that uses CUDA will also use OpenGL for some things. OpenGL is used to do such things as render 3D and accelerate drawing of items to the screen. After Effects uses it some. Premiere Pro, not so much. Even on After Effects, it's only really useful for rough preview renders; it's not appropriate for final renders or high-fidelity previews.
Copy link to clipboard
Copied
thanks Todd, thats pretty much what I figured... mostly for gaming and for some 3d rendering ....( to screen )
in defense of the forces that be, the marketing and the "basics" of presenting cs5 to the world, I have to say its awfully complicated by nature and is sorta not geared toward a "casual user " of computers to do this kind of work ( editing , SFX , etc )
So "squishy" and so on is probably part of the translation from programmer ( who already knows whats up ) to " writer " who has less of a clear idea of whats up unless someone tells him. And I wonder how many copy writers get their arms twisted to just " keep it simple " ...for the sake of getting the product delivered. Can't blame it on some conspiracy theory or something in this case. I don't have cs5 but I haven't been misled about whats up with this stuff.... I kinda GET IT, from the experience I have and knowing the hardware applications from the past. When you throw in CPU's with "new graphics abilities " like the recent news ...I just go back to thinking how commadore and atari dealt with "player missle" stuff.... somehow I doubt its gonna matter to my editing.
Copy link to clipboard
Copied
Even on After Effects, it's only really useful for rough preview renders; it's not appropriate for final renders or high-fidelity previews.
That is incorrect. OpenGL is only used on preview for "historic" effects, effects where CPU versions existed and were in use. This gaurantees consistency in final render from version to version. One some new filters, such as Cartoon, GPU is also used for final render (depending on the system configuration), because the performance is so much better (and the quality is comparable, but not pixel-for-pixel across machines like CPU).
Copy link to clipboard
Copied
Kevin, the Cartoon effect is one of very few built-in effects that uses the system that you refer to in After Effects. And whether or not that effect uses the GPU is not determined by the Use OpenGL Renderer setting for final renders or the Enable OpenGL preference in the Previews category. Whether Cartoon uses the GPU is determined by the Performance setting in the Cartoon effect itself.
My point was that people in general should not use the Use OpenGL Renderer setting for final renders or the Enable OpenGL preference in the Previews category if they care about the appearance of the images. There are so many things that are not supported by the OpenGL renderer that people who turn it on almost universally complain of poor results.
Copy link to clipboard
Copied
Endusers ultimately don't care about the names of underlying proprietary technologies.
What's this? Colin and I agreeing on this issue? (Now where did I put that calendar...)
Copy link to clipboard
Copied
Regardless of the hype created about the name and what it implies, the MPE or "Fast CS5" has taken me away from FCP.
Anyone who spends countless hours every day pushing a mouse around, should, in a professional sense, always be seeking a faster cost effective alternative to their workflow. CS5 does that.
I don't care what it's called
So thumbs up Adobe!
Copy link to clipboard
Copied
Colin Brougham wrote:
PS: Todd, you should probably refer to the Mercury Playback Engine correctly, and not just Mercury... or Dennis will send you a nasty note
Seeing as neither Todd nor I are in marketing, I think he's safe from a nasty note from me. Besides he helps me out too much for me to get on his bad side anyway!
Copy link to clipboard
Copied
Software MPE does not use the GPU/CUDA. Only hardware MPE uses the GPU/CUDA and that of course depends on your timeline. Supported effects, transitions, scaling and blending used. In some cases it can use more than 50% of the GPU processing power, in other cases only 10%. To complicate this even further, look at the explanation on the Background page of the PPBM5 Benchmark
On this benchmark test the average speed increase of hardware MPE over software MPE is around 10 x, depending on a number of other factors, like video card, CPU, memory, clock speed etc. So, for example the test takes 10 seconds with hardware MPE and 100 seconds with software MPE.
One very important thing to take into consideration is that hardware MPE is not only about speed, but also about quality. Hardware MPE uses maximum quality all the time, if one uses software MPE and set MRQ on, the quality will be comparable to hardware MPE, but the render times may differ by a factor 30 - 50.
Sidebar: If the video card/VRAM is completely used, hardware MPE reverts to software MPE automatically and lost is the maximum quality. Just to be aware of.