Getting into GPUs

Remember the ancient days of video editing, with the red render bar above the timeline marking huge sections that you couldn’t preview in real time? So you – get this – had to sit there and twiddle your thumbs while waiting for the timeline to be rendered. Those days now seem as old as floppy disks, as today’s video editing software running on even mainstream systems can handle even HD material with aplomb.

But we demand more – beyond HD to 2K and 5K cinematic resolutions, real-time editing of complex compressed formats like AVCHD, and building multitudes of layers on the timeline while applying sophisticated effects like color correction. And then we’ll move on to 3D video. So how can we keep up?

One answer is raw speed from the CPU (central processing unit), but the growth in GHz is peaking, as chips are expanding instead with multiple processing cores. Luckily, this parallel processing capability matches nicely with the demands of video editing, particularly decoding and encoding video stored in multiple blocks of data.

Meanwhile, the CPU-sucking needs of the gaming market has lead to the development of sophisticated GPU (graphics processing unit) chips to off-load drawing in the frame buffer, including shapes, textures, and blending. Working together, multi-core CPUs, plus parallel GPUs, can allow PCs to challenge the performance of dedicated gaming systems. Even better, GPUs also do the kinds of things that we want for video editing — not just drawing pixels, but transforming and warping, merging and blending.

So while CPU chips have been adding integrated graphics capabilities, which are particularly useful for lower-cost and lower-power systems, the combination of a powerful multi-core CPU and video card with parallel GPU can provide a serious kick to accelerate your video editing experience.

Faster and Better

The first application for GPUs is to deal with compressed video by splitting the work between both CPU and GPU, and then further among multiple cores on each. For example, the Sony Vegas Pro 10 video editing software has GPU-accelerated AVC/H.264 encoding and AVC rendering. The AVC encoding is parallelized on AMD ATI graphics chipsets, which support the OpenCL (Open Computing Language) programming framework for developing applications to run across mixed CPU / GPU systems.

Similarly, Sorenson Squeeze 7, for dedicated compression, takes advantage of GPU acceleration for AVC/H.264 encoding on NVIDIA video cards supporting the NVIDIA CUDA (Compute Unified Device Architecture) parallel computing architecture, including the GeForce and Quadro product lines. And the improvement is significant: Sorenson reports encoding times are up to three times faster from GPU acceleration.

On the system side, Apple has designed high-end CPU and GPU architectures into its latest MacBook Pro and iMacs, which offer dual- and quad-core Intel Core i5 and Core i7 processors up to 3.4 GHz with a new media engine for high-performance video encoding and decoding. Plus, these systems include integrated AMD Radeon HD graphics processors for high performance gaming, pro video editing and graphics intensive applications. Apple describes the resulting iMacs as up to 70 percent faster, and with up to three times the graphics performance of the previous generation.

And Apple’s new Final Cut Pro X, pre-announced at National Association of Broadcasters conference (NAB) in April this year, is rebuilt as a 64-bit application, and designed to playback using all cores and background rendering.

This is the future of video processing, as demonstrated by Adobe’s Mercury Playback Engine, introduced last year with Premiere Pro C5. This significantly boosts performance by leveraging three key elements of modern systems: 64-bit memory for handling larger frames and timelines, multi-threading for faster CPU performance, and NVIDIA GPUs to help offload on complex timelines for smooth playback.

Premiere Pro balances the processing by having the CPU perform the decoding of compressed video frames, while the GPU handles the processing of real-time effects. Other GPU-optimized functions include motion and scaling, time remapping, compositing, opacity, deinterlacing, and the handling of multi-format timelines.


So how much GPU do you need? And what are the price/performance options for bulking up an editing system with GPU acceleration?

Technically, you do not need any GPU at all. Today’s software is designed to scale up to take advantage of the available GPU performance, but can still perform all the same functions on the host CPU. But even a small investment can yield great savings in your time and workflow.

To evaluate GPUs, you can generally think of them in much the same way that you compare CPUs – in terms of clock speed, the number of parallel cores, and the amount of dedicated memory. For example, the NVIDIA GeForce line scales from starter GeForce / GT boards for around $30 to $75 (with relative 1x to 18x performance, 8 to 96 cores, and 256 MB to 1 GB of memory) to the performance GeForce GTX systems for up to $400 to $750 (with up to 75x – 94x performance, 512-1024 cores, and 1.5 – 3 GB of memory).

But while Adobe supports a variety of both GeForce and Quadro boards on both Windows and MacOS systems, NVIDIA strongly suggests focusing on the professional Quadro line for serious video editing. These are designed for longer lifetimes as a standard platform, compared to the more gaming-oriented GeForce line, and include stronger warranties.

While graphics companies and software developers are reluctant to make promises about performance gains for the wildly varying needs of video editing, the step from a mid-range NVIDIA Quadro 2000 at around $600 to a higher-end Quadro 4000 at $1,200 could provide around a 40 percent boost (stepping up from 192 to 256 cores and 1 to 2 GB of memory). Then higher end systems like the Quadro 5000 and 6000 for around $2,300 to $5,000 move up considerably (with 352 to 448 cores and 2.5 to 6 GB of memory), along with boosting the internal architecture, including fast double precision and memory speed.


The options in GPUs and graphics cards is good news for video editors, who can reap the benefits of better performance by upgrading to more powerful hardware. Video applications can automatically take advantage of additional cores and faster processing speeds through architectures like AMD OpenCL and NVIDIA CUDA. And these benefits are also available on laptop systems, which can rely on a low-power CPU and integrated graphics for office work, and then power up a parallel GPU to now meet the demands of serious video editing.

Even better, this trend will only improve with software upgrades, as application developers will be able to accelerate even more functions as they get more experience in designing for these systems. For example, Adobe Premiere Pro CS5.5 adds new GPU-accelerated effects including Directional Blur, Fast Blur, Invert, and the new Film Transition, along with additional optimization for features including mismatched media, speed changes, interpret footage, and field options.

There’s plenty more magic to come from GPUs, as new graphics cards are sporting 1024 cores and 12 GB of memory. For example, NVIDIA has been showing GPU-accelerated functions including color adjustment of raw camera images and calibration of 3D images. And there’s even more — the GPU has become a general-purpose processor in its own right, and is not just for graphics (and video) any more. Other kinds of applications, as well as operating systems like Windows and Mac OS then can take further advantage of these architectures to accelerate into the future. Meanwhile, the same kind of accelerated processing is coming to mobile devices through chips like the NVIDIA Tegra, featuring multitasking on a dual-core 1 GHz ARM CPU, up to two times faster Web browsing, hardware-accelerated Flash, console-quality 3D gaming with an ultra-low power GeForce GPU, and 1080p HD video playback processor. And that’s on a tablet, or even a smartphone!

Doug Dixon covers digital media at