Advanced Imaging


Advanced Imaging Magazine

Updated: July 8th, 2008 05:26 PM CDT

Maximizing Your Image Application Performance for Dual and Multi-Core Systems

Multi-core Processors
Fig. 1

By Ying Song

In this article, I will explain how Intel® Software Development Tools, and specifically Intel® Integrated Performance Primitives (Intel® IPP) for advanced imaging, provide great opportunities to unleash the power of multi-core processors.

As an image application developer, when you deal with image display, editing, analysis and manipulation, you will be concerned about choosing the appropriate algorithms to get the best quality image compression and achieve fast speed for image transmission via network or storage. In any image software application that deals with photographic images, we notice that Joint Photographic Experts Group (JPEG) and JPEG2000 are the most commonly used image compression standards. JPEG is a discrete cosine transform (DCT) based lossy image compression method standardized by the International Standards Organization in August 1990. JPEG encoding and decoding is commonly used in commercial applications for handling still images. JPEG2000 is one of the latest standards from the same organization that supports wavelet-based lossless and lossy image compression methods, and provides better quality for a similar compression ratio or higher compression ratio in comparison with traditional JPEG.

As image compression techniques become more complex, they will require more computational time or more network bandwidth from your hardware resource. One of your goals is to optimize your code to improve performance and achieve the best quality image compression.

With the recent dual-core and multi-core technology revolution advancements in microprocessor architecture, you can accelerate activities such as complex arithmetic, graphics, and synchronization of multiple threads. You can execute two or more software threads in an increasingly parallel manner, utilizing previously unused resources.

Table 1

Image Size Sampling 1 thread* 2 threads Dual-Core
1 2 3 next

Subscribe to our RSS Feeds