Skip to main content

Can OpenGL And OpenCL Overhaul Your Photo Editing Experience?

Fast Action Behind Still Photos

The processing loads common in video editing are well known; it doesn’t take more than a couple of 1080p tracks and a filter or two to soak up 100% of CPU resources in many systems. However, not as many people appreciate the significant compute burden imposed by modern digital photography workloads. Adding a sepia filter to an eight-megapixel (MP) image may be no big deal, but how about a complex blur to an 18 MP RAW image?

Even if your editing tasks don't swamp your CPU, they can still take a significant amount of time to execute, especially for multi-image batch jobs. More time means more waiting. For professionals, that translates to a loss of income. And pauses in your workflow prevent you from operating at the pace of your creativity, stopping you dead in your tracks. You want to edit as the creative options stream through your mind.

The object of the game, of course, is to devise new ways of getting more processing work done in less time. In two prior articles, we examined how modern GPUs, including those embedded within CPUs and APUs (compute engines with on-die graphics capabilities), can be leveraged by industry standard APIs to accelerate highly parallel operations within video post-processing and games. The same is now increasingly true within the world of photo editing.

Adobe, for example, has a long and impressive history of adopting hardware technologies that lend themselves well to accelerating media operations. The company has used OpenGL to accelerate certain functions through the GPU within Photoshop since version CS4, and such use has expanded with each subsequent release. Now, with the introduction of Photoshop CS6, the program opens its doors to OpenCL as a means to achieve even broader GPU-based acceleration.

Adobe is not alone. An intriguing but little-known photo workflow tool called Musemage now leverages OpenGL and OpenCL throughout its many workflow stages. The ever-popular open source photo editor GIMP now similarly employs these APIs in several areas. We also acquired a pre-release version of Corel’s AfterShot Pro, tweaked by Corel to bring early OpenCL support online specifically for our testing here.

We will test each of these applications across five system configurations and look for patterns in the results. How much does open standards-based GPU acceleration really help in these image-oriented tasks? Is there a difference in how much APUs and GPUs leverage accelerated features? Does acceleration scale evenly with graphics horsepower? Let’s find out.