Handmade Hero»Forums»Code
The_8th_mage
69 posts / 1 project
Intel Integrated Performance Primitives
Hello everyone,
do anyone have any say about IPP? how does it stands up to just coding your own code? do you have to work a lot to replace it?
Thanks,
The mage
Mārtiņš Možeiko
2562 posts / 2 projects
Intel Integrated Performance Primitives
Edited by Mārtiņš Možeiko on
If you have use for IPP then sure, use it. But for fairly simply stuff like what we see and will see on HH it is pretty trivial to write your own optimized code.

Personally me I don't trust Intel to use their closed-source libraries in my code. It is well know fact that Intel artificially cripples their libraries for other CPU's than Intel (like AMD). So you must be aware that your code will run pretty slow on non-Intel CPU's. Basically instead of writing code like this:
1
2
3
4
5
6
7
8
if (CPU supports SSE2)
{
   fast_function_that_uses_sse2();
}
else
{
   slow_and_generic_C_function();
}

they wrote code like this:
1
2
3
4
5
6
7
8
if (CPU manufacturer is Intel and CPU supports SSE2)
{
   fast_function_that_uses_sse2();
}
else
{
   slow_and_generic_C_function();
}


There exists workarounds (one, two) for that, but all that is just a one big pain.