Remi,

in the same environment, can you

mpirun -np 1 grep Cpus_allowed_list /proc/self/status


it is likely Open MPI allows only one core, and in this case, i suspect MKL refuses to do some time sharing and hence transparently reduce the number of threads to 1. /* unless it *does* time sharing, and you observed 4 threads with the performance of one */


mpirun --bind-to none ...

will tell Open MPI *not* to bind on one core, and that should help a bit.

note this is suboptimal, you should really ask mpirun to allocate 4 cores per task, but i cannot remember the correct command line for that

Cheers,

Gilles




On 6/22/2016 4:17 PM, remi marchal wrote:
Dear openmpi users,

Today, I faced a strange problem.

I am compiling a quantum chemistry software (CASTEP-16) using intel16, mkl threaded libraries and openmpi-18.1.

The compilation works fine.

When I ask for MKL_NUM_THREAD=4 and call the program in serial mode (without mpirun), it works perfectly and use 4 threads.

However, when I start the program with mpirun, even with 1 mpi process, the program ran but only with 1 thread.

I never add such kind of trouble.

Does anyone have an explanation.

Regards,

Rémi






_______________________________________________
users mailing list
us...@open-mpi.org
Subscription: https://www.open-mpi.org/mailman/listinfo.cgi/users
Link to this post: 
http://www.open-mpi.org/community/lists/users/2016/06/29495.php

Reply via email to