ISTEP 2012: How did Snapseed triple its performance on an Ultrabook device?

This week I have been in Istanbul as a guest of Intel, taking part in the Intel Software Conference (ISTEP), an exclusive event for invited resellers and press that brings them up to date on Intel’s strategy and product set. It’s been a great few days, with opportunities to put my questions to Intel’s experts and to see some of the company’s latest programming tools demonstrated.

There was a great quote by Tjalling Charles Koopmans, winner of the 1975 Nobel prize for economics, which set the framework for all the sessions: “The solution of important problems may be delayed because the requisite tools are not perceived or the availability of certain tools may lead to an awareness of problems, important or not, that can be solved with their help.”

Martin Boehme from Nik Software showed just what kind of difference the right tools can make with a demonstration of his company’s app running on an Ultrabook device from Asus. Nik Software makes lots of high-end packages for professional and semi-professional photographers, but today they’re perhaps best known for Snapseed, an app that has seen fantastic success on Apple’s iPhone and iPad. I got my copy when Apple gave it away as part of their Christmas promotion, if my memory serves me correctly. Anyway, it’s now on the Ultrabook too, and it’s a photo editing app that enables you to apply some sophisticated off-the-shelf filters and effects. The more obvious ones do things like turn the image black and white, but there are also filters that just seem to give the picture more punch using clever colour and contrast effects (I think – I couldn’t quite work out how they were making the image ‘pop’). When a filter is applied, you can use sliders to adjust its parameters, such as the strength, brightness and saturation. On an Ultrabook, you can immediately see what’s happening: as you move the sliders, the image changes equally smoothly.

The app has been designed to make the most of the Sandy Bridge processor, and the integrated on-board graphics, which is used by Snapseed for its image processing. The team used Open GL to access the onboard graphics, but when the program was run, they didn’t see the performance gain they expected.

Using Intel Vtune Amplifier XE, they were able to identify two bottlenecks: firstly, when the slider was dragged, the program was creating unnecessary mipmaps (maps of the image at different resolutions); and secondly, when the image was saved, it was being downloaded in 16 bit format when it was only being written as an 8 bit image file. The performance gain from fixing these issues was so easy to see that they didn’t even measure it, but Boehme estimates the software became 2 or 3 times faster.

That was an interesting story for me for a number of reasons: firstly it shows that Intel Vtune Amplifier XE can be used to track down problems with programming logic or specification, and isn’t just there for advanced fine-tuning. Secondly, it was a compelling demonstration of what happens when you bring together the world of apps (like Snapseed, which is on Intel’s AppUp Center), and hardware like the Ultrabook. Everyone was admiring the device, and its fast response and high quality screen make it ideal for photographers who want to publish photos while they are on a shoot.

I’ll review my notes and send some more updates from Istanbul in due course. In the meantime, I’ll try to force that They Might Be Giants song from my head…

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: