Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

IMSL with Parallelization

eleteroboltz
Beginner
696 Views
I'm usingIntel Visual Fortran 11.1 x64 andIMSL x64 v7.0 withMicrosoft Visual Studio 2008.

I'm using the routine IVPAG from IMSL and I noticed that it is using automatically parallelism to solve the problem, since I see in task manager my 4 core processor running all at 100%.

I'm doing some benchmark code and I would like the IMSL to notuse CPU parallelization.
How do I disable parallel computing in my case???
Thanks in advance.
0 Kudos
1 Solution
jimdempseyatthecove
Honored Contributor III
696 Views

Try placing a keyboard input routine ("Press any key to continue") into the front of the program (console input or message box).
Run, then when at prompt, launch task manager, locate your process (should be program name)
right click and do Properties. You should find check boxes for Affinity. Unselect all but one of the check boxes. Close Task Manager and click into your app window and press Enter.
You can also use WIN32 API to set Affinity restrictions. This has to be done before IMSL launches additional threads.

Jim Dempsey

View solution in original post

0 Kudos
4 Replies
Steven_L_Intel1
Employee
696 Views
You will have to ask Rogue Wave about whether it is possible to turn off threading in IMSL 7. Intel does not provide support for that version of IMSL.
0 Kudos
TimP
Honored Contributor III
696 Views
Did you look into OMP_NUM_THREADS, or, if it is using MKL, at the corresponding MKL options, including linking mkl_sequential?
0 Kudos
jimdempseyatthecove
Honored Contributor III
697 Views

Try placing a keyboard input routine ("Press any key to continue") into the front of the program (console input or message box).
Run, then when at prompt, launch task manager, locate your process (should be program name)
right click and do Properties. You should find check boxes for Affinity. Unselect all but one of the check boxes. Close Task Manager and click into your app window and press Enter.
You can also use WIN32 API to set Affinity restrictions. This has to be done before IMSL launches additional threads.

Jim Dempsey

0 Kudos
eleteroboltz
Beginner
696 Views
Thank you.
I turned off the parallelization by adding the command:
KMP_AFFINITY=proclist=[0],explicit
at Project>Properties>Debuggind>Enviroment
This way the code only use the processor 0.
To parallelize (4 cores processor) again it is necessary to change the comand to:
KMP_AFFINITY=proclist=[0,1,2,3],explicit
0 Kudos
Reply