- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hi, we are developing an image/signal processing application that need to work without a processor-brand constraint.
While developing the code, do we have to take any manual precaution regarding different processor families such as AMD?
Should we develop different codes, namely the generic and IPP? Or do we develop the code with IPP support but it won't work optimized if it detects a non-Intel cpu ?
Lien copié
7 Réponses
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hello kkirtac,
IPP support all Intel Processor orthe processors from other manufacturers supporting the same instruction set. So it should be no problem to use IPP on non-intel cpu.
For IPP optimized Code, see more information here:
<http://software.intel.com/en-us/articles/intel-integrated-performance-primitives-intel-ipp-understanding-cpu-optimized-code-used-in-intel-ipp/>
All my Best,
Ying
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Quoting - Ying Hu (Intel)
Hello kkirtac,
IPP support all Intel Processor orthe processors from other manufacturers supporting the same instruction set. So it should be no problem to use IPP on non-intel cpu.
For IPP optimized Code, see more information here:
<http://software.intel.com/en-us/articles/intel-integrated-performance-primitives-intel-ipp-understanding-cpu-optimized-code-used-in-intel-ipp/>
All my Best,
Ying
Hello, the link is dead.
"....manufacturers supporting the same instruction set"
What if the instruction set is different?
Looking at some older posts, there is a term called "generic code". I guess that there is a generic version of our IPP code, if the detected cpu is non-Intel, the generic code works. So, a generic version of our IPP code is generated automatically by Intel compiler, is it that ?
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Quoting - kkirtac
Hello, the link is dead.
"....manufacturers supporting the same instruction set"
What if the instruction set is different?
Looking at some older posts, there is a term called "generic code". I guess that there is a generic version of our IPP code, if the detected cpu is non-Intel, the generic code works. So, a generic version of our IPP code is generated automatically by Intel compiler, is it that ?
the generic c code is the worse case. AMD at least supports SSE2.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hello kkirtac,
seems one symbol ">" were added in the link. It should be
http://software.intel.com/en-us/articles/intel-integrated-performance-primitives-intel-ipp-understanding-cpu-optimized-code-used-in-intel-ipp/
It list all CPU optimized code used in Intel IPP.
for example,
w7 - Optimized for Pentium 4 processors
px - C-optimized for all IA-32 processors
In fact, IPPdetect cpu according to the supporting instruction set of processor (whichsoevermanufacturers). For example, you haveCPU which supportSSE2 instruction then IPP will call "w7" code to run on such processor. If yourcpu don't support SSE2, thenthe general otpimzed code for all IA32-processors will be used. Yes, as shyaki said, the current AMD processor areat least support SSE2 and support same intruction set as Intel Processor, soIPP will use at least "w7" codeon such kind of cpus.
shyaki, thank you.right, to run ippiGetLibVersion(), you will seewhich optimized version of IPPon your cpu.
Thanks
Ying
seems one symbol ">" were added in the link. It should be
http://software.intel.com/en-us/articles/intel-integrated-performance-primitives-intel-ipp-understanding-cpu-optimized-code-used-in-intel-ipp/
It list all CPU optimized code used in Intel IPP.
for example,
w7 - Optimized for Pentium 4 processors
px - C-optimized for all IA-32 processors
In fact, IPPdetect cpu according to the supporting instruction set of processor (whichsoevermanufacturers). For example, you haveCPU which supportSSE2 instruction then IPP will call "w7" code to run on such processor. If yourcpu don't support SSE2, thenthe general otpimzed code for all IA32-processors will be used. Yes, as shyaki said, the current AMD processor areat least support SSE2 and support same intruction set as Intel Processor, soIPP will use at least "w7" codeon such kind of cpus.
shyaki, thank you.right, to run ippiGetLibVersion(), you will seewhich optimized version of IPPon your cpu.
Thanks
Ying
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
You can also run one of Intel IPP sample "cpu info" from sample directory ipp-samplesadvanced-usagecpuinfo to find similiar info.
Thanks,
Ying S
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Thanks for the replies, its all clear now,
i have to ask one more question,
is there a strict constraint to use Intel C++ compiler for optimized solution? Or can we compile our IPP codes with any other c-c++ compiler such as MSVC?
Thank you.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hello,
you may check with IPP Release Notes for supported software. Yes, Microsoft compiler can be used with IPP as well as gcc under Linux and Mac OS.
Regards,
Vladimir

Répondre
Options du sujet
- S'abonner au fil RSS
- Marquer le sujet comme nouveau
- Marquer le sujet comme lu
- Placer ce Sujet en tête de liste pour l'utilisateur actuel
- Marquer
- S'abonner
- Page imprimable