problem with using IPP

problem with using IPP

hi,
i have installed the evaluation package of the IPP , read the some part of user manual (verified for good installation,setting environmental variables),but could not use the IPP functions with visual studio 2008.for this i think i have to add the libraries of IPP software to visual studio,but i dont know how to do that ,can u please suggest me on this regard

16 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hello,

I would recommend you to review an article Use Intel IPP in Intel Parallel Composerfrom IPP Knowledge Base resources.

Regards,
Vladimir

Quoting - Vladimir Dudnik (Intel)
Hello,

I would recommend you to review an article Use Intel IPP in Intel Parallel Composer from IPP Knowledge Base resources.

Regards,
Vladimir

hi,

i have added include files,executable files,and library files (tools->options->vc++ directories) but still some link error is coming like"LNK2019:unresolved external symbol _ippStaticInit@0 referenced in function _main",how to know which function is in which library.(i tried executing a program given in usermanual ia32 for static dispatching)

actually i want to link IPP with my application with dynamic linkage...what should i do?

how to know which ipp function in which library?

does intel core2duo processor support SSE4 instruction set?

pls guide me..

thanking you.

Quoting - coolsandyforyou
hi,
i have installed the evaluation package of the IPP , read the some part of user manual (verified for good installation,setting environmental variables),but could not use the IPP functions with visual studio 2008.for this i think i have to add the libraries of IPP software to visual studio,but i dont know how to do that ,can u please suggest me on this regard

ippStaticInit is in ippcorel.lib. Whether library contains function or not one may found using any simboilic search (F7 in the 'far manager' for example).

Quoting - coolsandyforyou
hi,
i have installed the evaluation package of the IPP , read the some part of user manual (verified for good installation,setting environmental variables),but could not use the IPP functions with visual studio 2008.for this i think i have to add the libraries of IPP software to visual studio,but i dont know how to do that ,can u please suggest me on this regard

The info about core2duo could be found in http://download.intel.com/products/processor/core2duo/desktop_prod_brief...
Ivan

i have added include files,executable files,and library files (tools->options->vc++ directories) but still some link error is coming like"LNK2019:unresolved external symbol _ippStaticInit@0 referenced in function _main",how to know which function is in which library.(i tried executing a program given in usermanual ia32 for static dispatching)

actually i want to link IPP with my application with dynamic linkage...what should i do?Quoting - Ivan Ryzhachkin (Intel)

The info about core2duo could be found in http://download.intel.com/products/processor/core2duo/desktop_prod_brief...
Ivan

hi,
i could fix all the build errors(previously i did not give the input libraries in linking->input).But now i am getting an error
error PRJ0003 : Error spawning 'cmd.exe' ...can u suggest me in fixing it?

Quoting - coolsandyforyou
hi,
i have installed the evaluation package of the IPP , read the some part of user manual (verified for good installation,setting environmental variables),but could not use the IPP functions with visual studio 2008.for this i think i have to add the libraries of IPP software to visual studio,but i dont know how to do that ,can u please suggest me on this regard

Hi,
ippStaticInit() is in ippcore*.dll. It useful with static libraries only, anddo nothing when using dll.
Regards,
ivan

Quoting - coolsandyforyou


hi ivan,
i have added the entire lib folder in the ipp package which includes(ippcores.lib) still iam getting the same error.

actually i want to link IPP with my application with dynamic linkage...what should i do?

Hello,

You may looking at the sample which show how to usestatic library with static linkage, that is why you see the error always:).

IPP provide many samples (including MSVC solution) at

http://software.intel.com/en-us/articles/intel-integrated-performance-primitives-code-samples/

For example, the sample, Image Processing with the Microsoft Foundation Classes (MFC), which show how to use ippiAdd function and use dynamic linkage.

Once you extract the sample, there are ippiSample.sln file in directory : ipp-samplesimage-processingimage-processing-mfc, please double click it, it will be opened in MS 2008 automatically.

Then you can review the project property and see how ipp dynamic librarywas linked.

as the KBhttp://software.intel.com/en-us/articles/compiling-and-linking-ipp-applications-with-intel-c-compilers/said,
On the main toolbar, select Project {your project name} Properties,Project Property Pages windowswill show up, select Configuration Properties Linker Input and in the Additional Dependencies line, add the libraries you wish to link to (e.g. dynamic link:ippi.lib ipps.lib ippcore.libor static link: ippiemerged.lib ippimerged.lib ippsemerged.libippsmerged.lib ippcorel.lib).

Best Wishes,
Ying H.

Quoting - Ying H (Intel)

Hello,

You may looking at the sample which show how to usestatic library with static linkage, that is why you see the error always:).

IPP provide many samples (including MSVC solution) at

http://software.intel.com/en-us/articles/intel-integrated-performance-primitives-code-samples/

For example, the sample, Image Processing with the Microsoft Foundation Classes (MFC), which show how to use ippiAdd function and use dynamic linkage.

Once you extract the sample, there are ippiSample.sln file in directory : ipp-samplesimage-processingimage-processing-mfc, please double click it, it will be opened in MS 2008 automatically.

Then you can review the project property and see how ipp dynamic librarywas linked.

as the KBhttp://software.intel.com/en-us/articles/compiling-and-linking-ipp-applications-with-intel-c-compilers/ said,
On the main toolbar, select Project {your project name} Properties, Project Property Pages windowswill show up, select Configuration Properties Linker Input and in the Additional Dependencies line, add the libraries you wish to link to (e.g. dynamic link:ippi.lib ipps.lib ippcore.lib or static link: ippiemerged.lib ippimerged.lib ippsemerged.lib ippsmerged.lib ippcorel.lib).

Best Wishes,
Ying H.

Dear Coolsandyforyou,

Have you happened to change the MSVS enironment setting?If youjust open the IPP MFC sample in MSVS 2008, everthing should be ready, you don't need addany new libraries.The error PRJ0003looks not IPP problem but the MS develop envionment.is it possible for you to resume the MSVS 2008? or
I check the google, here is the waysome one had tried
http://www.experts-exchange.com/Programming/Programming_Languages/Dot_Ne...

Regards,
Ying

Quoting - Ying H (Intel)

Dear Coolsandyforyou,

Have you happened to change the MSVS enironment setting?If youjust open the IPP MFC sample in MSVS 2008, everthing should be ready, you don't need addany new libraries.The error PRJ0003looks not IPP problem but the MS develop envionment.is it possible for you to resume the MSVS 2008? or
I check the google, here is the waysome one had tried
http://www.experts-exchange.com/Programming/Programming_Languages/Dot_Ne...

Regards,
Ying

Actually as mentioned in the user manual i have changed the environmental variable settings,INCLUDE,PATH,LIB.
i could fix this issue by writing
$(SystemRoot)
$(SystemRoot)System32
$(SystemRoot)System32wbem in vc++ directories.

i could build and run the solution file that u mentioned,ippiDemo.

but when running some other example program mentioned in book"IPP by stewart taylor" i am getting an error at the run time that "ippcore-6.1dll not found,reinstalling the application may fix this problem"

Let's make it clear. You created MSVC project by yourself from code published in Stewart's book? And then,executable modulecompiled from this project does not work becuase can't find IPP DLLs?

I think you need to double check how you created that project, what are the settings. Have you specified correct environment variables and so on.

Regards,
Vladimir

Quoting - coolsandyforyou

Actually as mentioned in the user manual i have changed the environmental variable settings,INCLUDE,PATH,LIB.
i could fix this issue by writing
$(SystemRoot)
$(SystemRoot)System32
$(SystemRoot)System32wbem in vc++ directories.

i could build and run the solution file that u mentioned,ippiDemo.

but when running some other example program mentioned in book"IPP by stewart taylor" i am getting an error at the run time that "ippcore-6.1dll not found,reinstalling the application may fix this problem"

i could run the project now,i copied all the dlls in the bin to sys32 folder,...it worked..thank u

Quoting - coolsandyforyou
i could run the project now,i copied all the dlls in the bin to sys32 folder,...it worked..thank u

i wrote a small sample code to get familiar with ipp.the following,

#include
#include

void main()
{
const int SIZE=256;
Ipp8u pSrc[SIZE],pDst[SIZE];
Ipp64u begin,end;

int i;

for(i=0;i pSrc[i]=(Ipp8u)i;

begin=ippGetCpuClocks();
for(i=0;i pDst[i]=pSrc[i];
end=ippGetCpuClocks();
printf("time taken in c=%ld",(end-begin));

begin=ippGetCpuClocks();
ippsCopy_8u(pSrc,pDst,SIZE);
end=ippGetCpuClocks();
printf("time taken in ipp=%ld",(end-begin));

}

i am surprised to see that time taken in ipp is 6 times larger than in c. Is thr anything wrong with the code?

Quoting - coolsandyforyou

i wrote a small sample code to get familiar with ipp.the following,

#include
#include

void main()
{
const int SIZE=256;
Ipp8u pSrc[SIZE],pDst[SIZE];
Ipp64u begin,end;

int i;

for(i=0;i pSrc[i]=(Ipp8u)i;

begin=ippGetCpuClocks();
for(i=0;i pDst[i]=pSrc[i];
end=ippGetCpuClocks();
printf("time taken in c=%ld",(end-begin));

begin=ippGetCpuClocks();
ippsCopy_8u(pSrc,pDst,SIZE);
end=ippGetCpuClocks();
printf("time taken in ipp=%ld",(end-begin));

}

i am surprised to see that time taken in ipp is 6 times larger than in c. Is thr anything wrong with the code?

where is ippiMalloc() function? which headerfile and library?

Quoting - coolsandyforyou
where is ippiMalloc() function? which headerfile and library?

#include
+
add respective libs from "ippi" domain - i.e. ippi.lib from "stub" for dynamic linking or "ippiemerged.lib"+"ippimerged.lib" for static linkage

Regards,
Sergey

Leave a Comment

Please sign in to add a comment. Not a member? Join today