Am 18.07.2012 um 07:17 schrieb Hongsheng Zhao:
> After compiling openmpi using intel parallel studio, I've seen the following bashrc settings by others:
> source /home/zhanqgp/intel/composerxe/bin/compilervars.sh intel64
> source /home/zhanggp/intel/composerxe/mkl/bin/mklvars.sh intel64 lp64
> export PATH=/home/zhanggp/software/openmpi-1.4.5/bin:$PATH
> expott LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/zhanggp/software/openmpi-1.4.5/lib
> export OMP_NUM_THREADS=1
> export MKL_NUM_THREADS=1
> Could you please give me some hints the OMP_NUM_THREADS and MKL_NUM_THREADS used in bashrc file? Must I use them? Thanks in advance.
If you grant some cores to your job to distribute the workload across the MPI processes, the built-in parallelization of the used library (MKL) may oversubscribe the system, as the default for it is to use all available cores in a machine. Means: if you have 4 cores in a machine and want to start 4 MPI processes. Each process will then start 4 processes when using the MKL and you end up with 16. Therefore often the MKL is limited to use just one core in such context.