Flash In The Pan: New Adobe Beta Enables GPU Offloading

Whether you hate Flash or, well, hate it less, there's no denying that the multimedia platform has a near-total lock on the development and distribution of rich multimedia content. The rise of Web 2.0 (and its cohort of equally vague cutesy phrases) has resulted in a huge increase in the amount of video published online, whether one considers CNN or YouTube. The fact that Flash is ubiquitous to the point that it's impossible to swing a dead cat more than six inches without smacking into a video of someone swinging a dead cat is what makes recent news from Adobe all the more intriguing. The latest Flash beta (10.1.51) is capable of offloading the task of H.264 decoding to the GPU, provided you've got a solution from ATI, NVIDIA, or Intel new enough to support it.

We've spent some time with the 10.1 beta and evaluated its performance and decode quality using Zotac's new Ion-powered Atom 330 nettop. A full review of that system is in the works, but the basic platform (2GB of RAM, 1.6GHz dual-core Atom, and NVIDIA's ION chipset) is typical for a device in this class. We tested in 32-bit Windows 7, using Internet Explorer 8. We're actually going to hit performance straight off the bat, then circle around and talk about the surrounding context. We tested several clips from YouTube and Hulu at 480P, 720P, and 1080P. We actually tested 1080P content from Vimeo as well, but that site wasn't willing to play nice with the new 10.1.51 Flash beta.

We actually tested Zotac's MAG in two configurations. In addition to the defaults listed above, we shut Hyper-Threading off and lowered the CPU clock to 1.2GHz. While this isn't the same as having an N270 to play with, the Mag's BIOS doesn't allow the user to simply shut off one of the two CPU cores. Even though the 1.2GHz/dual-core configuration doesn't exactly correspond to any currently shipping product, it's a useful point of comparison. The percentages given were recorded using Windows 7 performance monitoring tool. The video clips in question were all watched in-browser, not full-screen or in a separate window. Given the fact that even the full-strength Atom 330 struggled using Flash 10.0.32, and since we're assuming one's goal is to watch the content in question. All clips were allowed to load/buffer fully before playback began; all clips were looped repeatedly to ensure average CPU utilization wasn't impacted by outliers.

The Atom 330 performed reasonably well using Flash 10.0.32. Of our four test cases, both the Titans trailer and the 720P Star Trek trailer played reasonably smoothly, and both were watchable. The 1080P Star Trek trailer (marked with an asterisk because I had to use a different clip) actually dropped fewer frames than Hulu's Legend of the Seeker, despite the higher CPU utilization. As for Legend, it was just smooth enough to watch, while stuttering and dropping just enough frames at random intervals to drive one insane. Once we updated to Flash 10.1.51, it's smooth sailing for the Atom 330. Crystal-clear playback, no stuttering, no dropped frames. So what happens when we slash the system's available CPU power?

Ironically, the CPU utilization graph for our 1.2GHz dual-core Atom doesn't begin to tell the whole story. The 720P Star Trek trailer and Hulu's Titans trailer were the most-watchable (the high CPU utilization on Titan's was a bit surprising, considering the clip's 480P resolution). Dropped frames abounded in both cases, but the audio and video still synched. The 1080P Star Trek was bad, and the 720P Legend broadcast can't even be called a slideshow. At best, Legend resembled a weird art project, in which completely random photographs were displayed for 4-5s each.

Updating to Flash 10.1.51 completely transformed the experience. While we still saw the occasional dropped frame or tiny stutter, all of our test videos were eminently watchable. Our down-clocked Atom may not correspond to a specific product, but it does the best job of demonstrating the significance of the Flash update. Without GPU-assisted decoding, the 1.2GHz chip was unable to maintain an acceptable framerate in any of the clips we tested. The updated Flash beta didn't just improve a previously existing capability, it fundamentally enabled a level of performance that wasn't possible before.

Given that this is a beta version, there are plenty of kinks and issues yet to be ironed out. The final 10.1 update will enable hardware-level offloading for both AMD and Intel hardware (driver-level incompatibilities are currently causing issues here.) Expect to see NVIDIA talking up this type of ION-delivered capability big time in the months ahead. Intel may theoretically have a competitive design in its GMA4500HD, but the overwhelming majority of netbooks based on an Intel graphics processor are built around the GMA950. We'll have to wait for finalized drivers and the actual 10.1 update before we make a call on which graphics vendor comes out on top, but NVIDIA appears to have an early lead. With the Christmas buying season almost upon us and a market that remains heavily consumer-driven, expect to see Team Green talking up ION as the "real" netbook/nettop platform for all they're worth.