Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
7 Views

Ipp and libiomp5md.dll

I am analysing my project withVTune. The project is using some of the IPP functions, I am linking only ippdc.lib ippch.lib ippcore.lib ipps.lib. The compiler isMS VS C++ 2008 compiler.

After running VTune I am seeing the following.

Under : Most Active Functions in Your Application I see: libiomp5md.dll unresolved addresses - 43.38%.

I am not using libiomp5md.dll or something related. From other side 43.38% spend on this is too much.

What is wrong?

Thanks in advance,

Constantine

0 Kudos
5 Replies
Highlighted
7 Views

It is not clear is that too much or not. If you see performance scalability on 2 or 4 core system against 1 core system that might what is needed.
Vladimir

0 Kudos
Highlighted
7 Views

Quoting - vdudnik
It is not clear is that too much or not. If you see performance scalability on 2 or 4 core system against 1 core system that might what is needed.
Vladimir

I am not linking tolibiomp5md.dll. Why this statistics is collected for it then?

0 Kudos
Highlighted
7 Views

IPP DLLs linked with libiomp5 library. If you do not want to use IPP internal threading you may decide to link with IPP static not threaded libraries.

Vladimir

0 Kudos
Highlighted
7 Views

Quoting - vdudnik

IPP DLLs linked with libiomp5 library. If you do not want to use IPP internal threading you may decide to link with IPP static not threaded libraries.

Vladimir

Is IPP staticperformance better?

Constantine

0 Kudos
Highlighted
7 Views

Thereare number of options available for using IPP in your application. You may decide to rely on IPP internal threading and in this case you need to link either with IPP DLL or with IPP static threaded libraries.
You also may decide to implement threading on top of IPP functions (for example to call IPP func in parallel on different part of data). For this case it is better to link with IPP static not threaded libraries.
And finally you may try to combine IPP internal threading and threading on application level (IPP simple_playeruse this approach when you link with DLLs or threaded static libs).
Basically, IPP provides you with optimized kernels. It is application developer responsibility to make sure it is used efficiently.
Vladimir

0 Kudos