Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

Compiler options to enable threading

abraidwood
Beginner
624 Views
Somehow, I managed to compile a version of my image scaling app which uses threaded JPEG code.

I've read in the IPP documentation that IPP has threaded routines in this area.

My problem is that I can't remember what options turned this on. I'm using gcc3.4 and ipp4.1 and any help would be greatly appreciated
0 Kudos
3 Replies
Vladimir_Dudnik
Employee
624 Views

Hello,

first of all I want inform you that the latest available version of IPP is v5.0, so you can consider to move on new version first. As usually, it contains additional optimization and functionality in vide range areas.

To usethreading in JPEG codec sample, you have to use Intel compiler, because threading was implemented with OpenMP API, as far as I know, gcc does not support it. Compiler option is -openmp for Linux version of Intel Compiler and /Qopenmp for Windows version of Intel Compiler. By the way, if you will build IPP JPEGView sample with Intel compiler it will automatically use OpenMP threading.

Regards,
Vladimir

0 Kudos
abraidwood
Beginner
624 Views
Hi,

Not sure that this is actually what I did, but using the latest IPP IJG sample library improved performance.

Does IPP41 utilise OpenMP in some of its functions? The document ipp50omp.ini may suggest it's new in 5.0?

thanks,
Alistair
0 Kudos
Vladimir_Dudnik
Employee
624 Views

Hi Alistar,

yes, in ipp50omp.ini we lists functions which were threaded inside (inside threading is available only in DLLs).

Regarding JPEG sample, you need to use JPEGView sample which was threaded above IPP (on codec level). The IJG sample is not use OpenMP threading above IPP functions.

Regards,
Vladimir

0 Kudos
Reply