Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
6704 Discussions

Is it possible to get old version "ipgintfc.c" (~2001)?

voval
Beginner
370 Views
Is it possible to get source kod "ipgintfc.c" function which used for ijl15.dll (~2001)?
0 Kudos
5 Replies
Vladimir_Dudnik
Employee
370 Views
Sorry, this is not possible. The old Intel JPEG library was end of lifed several years ago and we do not provide technical support for it.

What is the reason for that request? You have sources for new Intel JPEG library, built on IPP functions. Also, please note that efficience of UIC JPEG codec should be better that this old IJL.

Regards,
Vladimir

0 Kudos
voval
Beginner
370 Views
Quoting - Vladimir Dudnik
Sorry, this is not possible. The old Intel JPEG library was end of lifed several years ago and we do not provide technical support for it.

What is the reason for that request? You have sources for new Intel JPEG library, built on IPP functions. Also, please note that efficience of UIC JPEG codec should be better that this old IJL.

Regards,
Vladimir

The old versin ijl work up to 3 times faster then last versions.
0 Kudos
Vladimir_Dudnik
Employee
370 Views
Our testing show that there is some performance difference for diiferent compression modes, but in general new IPP version is faster and provide better visual quality of decoded picture then it was in old IJL 1.51

You may see 3X perf slowdown if in new IJLsomehow you choose PX code in IPP. So you compare MMX optimized old IJL with generic C code of new IJL which is of course not equivalent comparison. This my happen when you for example did not call ippStaticInit function inside of IJL to initialize IPP library dispatcher.

Vladimir

0 Kudos
voval
Beginner
370 Views
Quoting - Vladimir Dudnik
Our testing show that there is some performance difference for diiferent compression modes, but in general new IPP version is faster and provide better visual quality of decoded picture then it was in old IJL 1.51

You may see 3X perf slowdown if in new IJLsomehow you choose PX code in IPP. So you compare MMX optimized old IJL with generic C code of new IJL which is of course not equivalent comparison. This my happen when you for example did not call ippStaticInit function inside of IJL to initialize IPP library dispatcher.

Vladimir


In the ijlInit :
...
jprops->state.processor_type = ippGetCpuType();
...
jprops->processor_type = jprops->state.processor_type;
...


In the ijlRead/ijlWrite :
...
if(jprops->processor_type != jprops->state.processor_type)
{
ippStaticInitCpu(jprops->processor_type);
}
...
When will be call ippStaticInitCpu ?
0 Kudos
Vladimir_Dudnik
Employee
370 Views

It should be called at DllMain, defined in main.c

[cpp]BOOL APIENTRY DllMain(
  IJL_HANDLE   h,
  unsigned int dwReason,
  LPVOID       p)
{
  IppStatus status;
  BOOL bres = TRUE;

  UNREFERENCED_PARAMETER(h);
  UNREFERENCED_PARAMETER(p);

  switch(dwReason)
  {
    case DLL_PROCESS_ATTACH:
      status = ippStaticInit();
      bres = (ippStsNoErr <= status);

      break;

[/cpp]
And you can change the code selected by IPP dispatcher at run time (that is why ijlRead/Write have these constructions)

Vladimir
0 Kudos
Reply