AnandTech Tests GPU Accelerated Flash 10.1 Prerelease
by Anand Lal Shimpi on November 19, 2009 12:00 AM EST- Posted in
- GPUs
I suppose I could start this article off with a tirade on how frustrating Adobe Flash is. But, I believe the phrase “preaching to the choir” would apply.
I’ve got a two socket, 16-thread, 3GHz, Nehalem Mac Pro as my main workstation. I have an EVGA GeForce GTX 285 in there. It’s fast.
It’s connected to a 30” monitor, running at its native resolution of 2560 x 1600.
The machine is fast enough to do things I’m not smart or talented enough to know how to do. But the one thing it can’t do is play anything off of Hulu in full screen without dropping frames.
This isn’t just a Mac issue, it’s a problem across all OSes and systems, regardless of hardware configuration. Chalk it up to poor development on Adobe’s part or...some other fault of Adobe’s, but Flash playback is extremely CPU intensive.
Today, that’s about to change. Adobe has just released a preview of Flash 10.1 (the final version is due out next year) for Windows, OS X and Linux. While all three platforms feature performance enhancements, the Windows version gets H.264 decode acceleration for flash video using DXVA (OS X and Linux are out of luck there for now).
The same GPU-based decode engines that are used to offload CPU decoding of Blu-rays can now be used to decode H.264 encoded Flash video. NVIDIA also let us know that GPU acceleration for Flash animation is coming in a future version of Flash.
To get the 10.1 pre-release just go here. NVIDIA recommends that you uninstall any existing versions of flash before installing 10.1 but I’ve found that upgrading works just as well.
What Hardware is Supported?
As I just mentioned, Adobe is using DXVA to accelerate Flash video playback, which means you need a GPU that properly supports DXVA2. From NVIDIA that means anything after G80 (sorry, GeForce 8800 GTX, GTS 640/320MB and Ultra owners are out of luck). In other words anything from the GeForce 8 series, 9 series or GeForce GT/GTX series, as well as their mobile equivalents. The only exceptions being those G80 based parts I just mentioned.
Anything based on NVIDIA’s ION chipset is also supported, which will be the foundation of some of our tests today.
AMD supports the following:
- ATI Radeon™ HD 4000, HD 5700 and HD 5800 series graphics
- ATI Mobility Radeon™ HD 4000 series graphics (and higher)
- ATI Radeon™ HD 3000 integrated graphics (and higher)
- ATI FirePro™ V3750, V5700, V7750, V8700 and V8750 graphics accelerators (and later)
It’s a healthy list of supported GPUs from both camps, including integrated graphics. The only other requirement is that you have the latest drivers installed. I used 195.50 from NVIDIA and Catalyst 9.10 from AMD. (Update: The Release Notes now indicate Catalyst 9.11 drivers are required, which would explain our difficulties in testing. ATI just released Catalyst 9.11 but we're having issues getting GPU acceleration to work, waiting on a response from AMD now)
Intel’s G45 should, in theory, work. We tested it on a laptop for this article and since the acceleration is DXVA based, anything that can offload H.264 decode from the CPU using DXVA (like G45) should work just fine. As you’ll see however, our experiences weren’t exactly rosy.
135 Comments
View All Comments
brundlefly - Tuesday, November 17, 2009 - link
I don't know why you are saying that everyone has an issue with Flash, including Windows users, because I have never had a problem with it under Windows - ??On MacOS - BIG problems with HD YouTube content.
I installed the 10.1 Flash Beta on my 2008 unibody 2.4GHz MacBook - both on Snow Leopard side and on the Windows 7 x64 Boot Camp partition.
Made no difference whatsoever on either side.
I used Firefox playback of the 1080P version of the Dark Knight trailer for comparison:
http://www.youtube.com/watch?gl=CA&hl=en&v...">http://www.youtube.com/watch?gl=CA&hl=en&v...
Under Snow Leopard, the video was obviously jittery and video info indicated many dropped frames. CPU usage: 127% AVERAGE. Even the buffer froze at one point, stopping the video - I get this often under MacOS for some reason. The fan started up in seconds.
Under Windows 7, I experienced a handful of dropped packets on starting the video, but never observed anything but pitch-perfect playback, and the buffer raced far ahead of the playback time with no slowdown. CPU usage: 55% AVERAGE
Its the same damn hardware.
Drakino - Tuesday, November 17, 2009 - link
It is an issue specific to the Mac, however the ball is in Adobe's court to fix it. It's their code that sucks ass under OS X. Apple had HD video content playable just fine full screen prior to the switchover to Intel CPUs.This is why Apple pushes for open standards and wants Flash to die. Apple can't improve the closed Flash platform on their own, but they can build their software to support standards well. It looks bad for the Mac when the platform has problems playing keyboard cat due to closed proprietary crap.
The fact that Adobe "magically" brought CPU usage down from 450% to 130% is clearly a sign they can improve it if they try. Now they just need to stop acting like children and use the OpenCL standard on OS X 10.6 to accelerate it via the GPU.
7Enigma - Tuesday, November 17, 2009 - link
"This is why Apple pushes for open standards..."I'm sorry your post is negated by this hysterical comment.
Drakino - Tuesday, November 17, 2009 - link
"I'm sorry your post is negated by this hysterical comment."How so?
Sure, Apple likes to control their platforms, but that doesn't mean the platform is built on closed technology.
WebKit (the foundation of Safari, tons of mobile browsers including the ones on Android and the Pre) started as KHTML. Apple helped extend it and turn it in the mobile browsing powerhouse. It's also one of the most HTML compliant browsing cores out there. If HTML5 ever sorts out this video codec mess, it is possible it can replace Flash, a technology only controlled by Adobe.
Quicktime is completely MPEG 4 compatible, due to the fact that most of MPEG 4 is based on Quicktime technology. H.264 is everywhere now, streaming into the crappy Flash players, being used to encode movies on BluRay, and so on. MPEG 4 audio is also widespread mostly due to the iTunes Store.
PDF is a core part of OS X.
Bonjour/DNS-SD is an open protocol widely adopted by many printers and other devices, and even Microsoft with Link-local Multicast Name Resolution borrowed heavily from it.
OpenCL is a unified GPU compute language that helps to get GPGPU acceleration out of the "Glide/3dfx" realm and on it's way to a wider adoption.
Grand Central Dispatch is a great technology for developing programs that run well on multicore CPUs, and is being adopted by FreeBSD as well.
Would you like to bring up any counterpoints, or just mindlessly try to bash comments without anything to back them up?
mindless1 - Tuesday, November 17, 2009 - link
I will mindlessly bash. Ha!Apple is closed, all you did is list how they perverted something open to make it closed, extra effort in doing so.
menting - Tuesday, November 17, 2009 - link
if you rephrase it this way it'll be more correct."Apple pushes for open standards on anything they don't/can't control/own"
Souka - Tuesday, November 17, 2009 - link
My wife's old ThinkPad T30 laptop, with its ATI 7500 Radeon isn't supported. Guess she can't watch her latest shows in full screen..heh.iwodo - Tuesday, November 17, 2009 - link
I need 70% of CPU Core to watch Full HD Video on a bleeding edge Computer?I dont know if it is poor programming or what. But i expect more with OpenCL support, and faster software, as well as near Zero CPU resources for H.264 content.
Why do I have extra 40% CPU usage watching H.264 content inside Flash, when i have sub 10% CPU usage when watching it through OS Media Player....
Xplorer4x4 - Tuesday, November 17, 2009 - link
Will this be of use on a GT 130M?Stereodude - Tuesday, November 17, 2009 - link
The acceleration does work for at least some people on the Intel 4500MHD chipset. You need the absolute latest drivers from Intel (.1986) that came out only a few days ago though.