ijl15 vs ijl20 vs IPP jpeg decode performance

trebo
January 24, 2008 7:34 AM PST
Rate
 
#3 Reply to #2

Hi again,

We have now done some testing with the IPP JPEG codec. However, we have not been able to improve performance. On the contrary it got slightly worse!

Using IPP JPEG codec version 5.3.1.064
0.896MP-0.20MB-1152x778.JPG
Reading 100 JPEG pics in: 1375 ms
Average: 13.750000 ms per pic

Compare this to the ijl results:

Using ijl15
0.896MP-0.20MB-1152x778.JPG
Reading 100 JPEG pics in: 1266 ms
Average: 12.660000 ms per pic

Using ijl20
0.896MP-0.20MB-1152x778.JPG
Reading 100 JPEG pics in: 1344 ms
Average: 13.440000 ms per pic


The code is taken from the sample app JPEGView and looks like follows:

void GetImageFromJPEG()
{
CIppImage m_image;
PARAMS_JPEG m_param_jpeg;
Ipp8u* pJPEG = 0;
int JPEGSize;
JERRCODE jerr;
CMemBuffInput in;
CFile jpeg;

printf("Using IPP JPEG codec version 5.3.1.064 ");
printf(
"0.896MP-0.20MB-1152x778.JPG ");
jpeg.Open(
"Pics\0.896MP-0.20MB-1152x778.JPG", CFile::modeRead|CFile::typeBinary);

JPEGSize = (int)jpeg.GetLength();
pJPEG = (Ipp8u*)ippMalloc(JPEGSize);
jpeg.Read(pJPEG,JPEGSize);
jpeg.Close();
jerr = in.Open(pJPEG,JPEGSize);
m_image.Color(JC_UNKNOWN);

int iterations = 100;
DWORD dwStartTick = GetTickCount();
long pos = 0;

for(int i=0; i<iterations; i++)
{
    jerr = ReadImageJPEG(&in,&m_param_jpeg,&m_image);
    in.TellPos(&pos);
    jerr = in.Seek(pos*-1, 1);
}

DWORD dwEndTick = GetTickCount();
printf(
"Reading %d JPEG pics in: %lu ms ", iterations, dwEndTick - dwStartTick);
printf(
"Average: %f ms per pic ", (double)(dwEndTick-dwStartTick) / iterations);
}

Any ideas of why we don't get better performance with IPP JPEG codec than with ijl15 and ijl20?
As stated above, we are using IPP version 5.3.1.064

Br,
Robert



Intel Software Network Forums Statistics

8292 users have contributed to 31240 threads and 99118 posts to date.
In the past 24 hours, we have 11 new thread(s) 11 new posts(s), and 20 new user(s).

In the past 3 days, the most popular thread for everyone has been huge pages on linux? The most posts were made to Pipeline buffer between stages? The post with the most views is Another example attached (Tr

Please welcome our newest member amirsam7