i wrote an app using IPP 7.0 using SC module (Speech Coding) now i found that i have to redistribute all the following files:
libippscw7.so (minimum SSE implementation)
libippsw7.so (minimum SSE implementation)
that seem to be required by libippscw7.so
is that right? 9 libraries?
with 6.1 i nedeed the first 6 (i was using the generic px libraries then)
Hello, Intel compiler may insert calls to some specific optimized functions (like for example sin()) when optimization is turned on at build stage. IPP optimized libraries were definetely built with optimization turned on. So you may need these libraries for your IPP based application.
Please also note that in order to be able to use the IPP optimization for the latest Intel processors you many need to add other cpu-specific ippSC libraries (IPP dispatcher will automatically detect processor capabilities and load most optimial cpu-specific library).
Additionally, if you want to reduce binary size of libraries redistributed with your application I would recommend you to consider IPP custom DLL option (you may find more details in IPP knowledge base on this).
I don't get your advice about addir more cpu-specific libraries though. If i distribure the libippsc(w7) i will have the widest range of supported CPUs right? (all those supporting SSE2) since px is no more available in IPP7 w7 is the next big range. right?
And that is when custom DLL advantage starts to play its role. When your application only use relatively small subset of IPP functions you may build custom DLL from IPP static libraries which will include only those functions which your application need and as a result will have less binary size. Note, with custom DLL technique it is also possible to selectively choose what cpu-specific code you want to include into your DLL. For example, if you knowthat your application is targeted for Atom processors only you may choose only S8 on IA32 (N8 for Intel64) specific code.