- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
int main()
{
timeVal start, end, diff;
std::vector<float> in1,in2,out;
in1.resize(100000,1);
in2.resize(100000,2);
out.resize(100000);
start = TimeNow();
for (int j=0;j<1000;++j) {
ippsSub_32f(&in1[0],&in2[0],&out[0],out.size());
}
end = TimeNow();
diff = TimeDiff(end,start);
double diffMS = timeVal_to_Millisecs(diff);
printf("Time Taken: %f\\n",diffMS);
return 0;
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
It looks that the code is linking with IPP statically, but it does to call ippInit() function.
This function is required by static linkage, or it will only use non optimized code.
Check here for more information:
http://software.intel.com/en-us/articles/ipp-dispatcher-control-functions-ippinit-functions/
Thanks,
Chao
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
It looks that the code is linking with IPP statically, but it does to call ippInit() function.
This function is required by static linkage, or it will only use non optimized code.
Check here for more information:
http://software.intel.com/en-us/articles/ipp-dispatcher-control-functions-ippinit-functions/
Thanks,
Chao
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
without ippInit()
32: Time Taken: 73.700000
64: Time Taken: 129.448000
with IppInit()
32: Time Taken: 107.572000
64: Time Taken: 105.004000
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page