posted by Dmitry Abrosimov on Mon 21st Apr 2003 23:01 UTC
"Intel Integrated Performance Primitives and Performance Speed"
Intel Integrated Performance Primitives (IPP) [7] is a software library that provides a variety of multimedia functions for developing high performance applications. This software includes a number of library segments, each of which is highly optimized for the use with one of the Intel? processors (including the Intel Pentium? 4 processor, Intel Itanium? processor, and Itanium 2 processor). The IPP library is very effective for processing data arrays, such as vectors, matrices, images, etc. In this case application performance rate may increase highly. The other purpose of the IPP library is to simplify code writing. IPP includes functions that are often used in different calculation regions, such as vector and matrix algebra, image development, etc.

To prove the efficiency of the use of the IPP software library, a performance test of the 'Breeze' application was carried out. Computers based on two different processors, a 700 MHz Intel Pentium III processor and a 2000 MHz Intel Pentium 4 processor, were used. Two modifications of the application were optimized for the Pentium III processor and Pentium 4 processor respectively (these modifications differ from each other by the IPP optimization variants they use and by compiler presets). Both programs were compiled by the Intel C++ compiler [8]. The Pentium III processor does not support some Pentium 4 processor instructions, thus it was tested only with the first modification. All the tests were performed with picture resolution 512x384 pixels.

The results of the test are presented in Fig. 3. The figures above columns show averaged performance rate in frames per second; the blue columns correspond to IPP disabled mode, the yellow ones correspond to IPP enabled mode. The figure proves that the use of the most optimized IPP library segment in combination with the optimal compiler presets may significantly enhance the application performance.


Fig. 3. 'Breeze' application performance rate in frames per second shown on (from left to right): the Pentium III processor (1), Pentium 4 processor using the Pentium III processor-optimized library (2), and Pentium 4 processor using the Pentium 4 processor-optimized library (3)

References
1. Lasse S. Jensen and Robert Golias. 'Deep-Water Animation and Rendering'.
2. Jerry Tessendorf. 'Simulating Ocean Water'. SIGGRAPH 2001 Course notes.
3. Miguel Gomez. 'Interactive Simulation of Water Surfaces'. Game Programming Gems. ISBN 1-58450-049-2.
4. Nick Foster and Dimitri Metaxas. 'Realistic Animation of Liquids'. Graphical Models and Image Processing, 58(5), 1996, pp.471-483.
5. Gary A. Mastin, Peter A. Watterger, and John F. Mareda, 'Fourier Synthesis of Ocean Scenes', IEEE CG&A, March 1987, p 16-23.
6. Dmitry Abrosimov, Victor Zelenogorsky, Michail Kryukov. 'Computer Simulation of Water Surface View'. Proceedings of the 9-th International Conference on Computer Graphics and Vision (GRAPHICON-99). Moscow, MSU, 1999, pp. 255-260 (in Russian).
7. http://developer.intel.com/software/products/ipp/ipp30/
8. http://developer.intel.com/software/products/compilers/

Copyright 2002 © Intel Corporation.
All Rights Reserved.

About the Author
Dmitry Abrosimov is a software engineer on the Intel Performance Libraries software development team at Intel Corporation, based in the Nighzy Novgorod Russia software lab. Dmitry graduated from Gorky state university in 1979 and earned a Ph. D. degree (Russian Candidate of sciences degree) in physics and mathematics in 1996. Prior to joining Intel, Dmitry worked at the Applied Physics Institute in Nizhny Novgorod, Russia, specializing in underwater acoustics.

Table of contents
  1. "Introduction, Algorithm"
  2. "Water Surface Modeling, Reflection and Refraction"
  3. "Caustics, Distortion, Skylight Illumination and Perspective Transform "
  4. "Intel Integrated Performance Primitives and Performance Speed"
e p (0)    19 Comment(s)

Related Articles

posted by Thom Holwerda on Fri 2nd Jan 2009 21:38
posted by Thom Holwerda on Sun 28th Dec 2008 10:43
posted by Thom Holwerda on Tue 16th Dec 2008 23:35, submitted by jmalasko