Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
6814 ディスカッション

IPP7.0 beta does not include the static "merged" lib files?

shyaki
ビギナー
1,132件の閲覧回数

I have looked forward to this release for a long time.
However, after I installed it, I could not find any static "merged" lib files. Did Intel change the way how to use IPP? Where can I find a document about it?

thank you!

0 件の賞賛
11 返答(返信)
Vladimir_Dudnik
従業員
1,132件の閲覧回数
Hi Shyaki,

Starting from IPP 7.0 we actually try to make customers life easier. Instead of having those merged and emerged libraries we now provide single static library which combine functionality of static dispatcher and contain all cpu-specific code.

Please learn more details on what's new in IPP 7.0 beta page.

Regards,
Vladimir
PaulF_IntelCorp
従業員
1,132件の閲覧回数
Hello Shyaki,

Also, please review this document for an outline of the new directory structure:

http://software.intel.com/en-us/articles/intel-ipp-70-library-install-guide/

Regards,

Paul
Mark_Rubelmann
ビギナー
1,132件の閲覧回数
I'm also having trouble getting the static libraries to work. I've tried linking to ippcore, ippcore_l, ippcore_t, and friends but no matter what I do I get an error about it not being able to find ippcore-7.0.dll when I run my program. Am I doing something wrong?

-Mark
Vladimir_Dudnik
従業員
1,132件の閲覧回数
Hi Mark,

it seems you did something wrong. At least when you link with IPP static libraries you should not get message that DLL not found.

Regards,
Vladimir
Mark_Rubelmann
ビギナー
1,132件の閲覧回数
Do you have any ideas on what I'm doing wrong? Previously I was linking to:

ippcorel.lib ippsemerged.lib ippsmerged.lib ippiemerged.lib ippimerged.lib ippccemerged.lib ippccmerged.lib ippjemerged.lib ippjmerged.lib

For 7.0, I changed those to:

ippcore.lib ipps.lib ippi.lib ippcc.lib ippj.lib

Thanks,
Mark
Mark_Rubelmann
ビギナー
1,132件の閲覧回数
Oops, it looks like the article about selecting the appropriate libraries answered my question. I guess I needed the *_l.lib files. Those ones will dispatch to multithreaded code when available, right?

Thanks,
Mark
Vladimir_Dudnik
従業員
1,132件の閲覧回数
Hi Mark,

libraries without postfixes in the name are DLL import libraries, postfix '_l' stands for single threaded static libraries and postfix '_t' stands for multithreaded static libraries.

Regards,
Vladimir
Mark_Rubelmann
ビギナー
1,132件の閲覧回数
Hmm... So do the _t libraries work on single thread CPUs? I guess if they're using OpenMP they must, right? Do you get all the same optimizations as in the _l libraries? If you need to link to the _t libraries to get static linkage plus multithreading, I think the library selection article is wrong (or at least misleading). It only has the _l versions listed under "Static Linking with Dispatching and Custom Dynamic Linking". The _t ones are under "Static Linking without Dispatching".

Thanks,
Mark
Vladimir_Dudnik
従業員
1,132件の閲覧回数
Yeah, seems we need to check the article.

'_t' (static multithreaded) libraries will work on single core cpu. We have the same optimization across all binaries DLLs, static single threaded and static multithreaded libraries. The different variants provided for flexibity. For example, static single threaded libraries might be used in OS kernel mode drivers, while multithreaded libraries can't.

Regards,
Vladimir
Mark_Rubelmann
ビギナー
1,132件の閲覧回数
Thanks for the clarification! That makes sense.

Thanks,
Mark
Ying_H_Intel
モデレーター
1,132件の閲覧回数
Just add more info, the library filenames have been changedin version 7.0 of the IPP library.

Therelevant documentation is avaiable at IPP 7.0 Beta - Selecting the Intel IPP Libraries Needed by Your Application

Thanks
Ying
返信