[mvapich-discuss] How to verify that hwloc is enabled and used
Jonathan Perkins
perkinjo at cse.ohio-state.edu
Thu Sep 6 17:37:29 EDT 2012
On Thu, Sep 06, 2012 at 02:52:26PM -0600, Craig Tierney wrote:
> I am trying to run some openmp/mpi hybrid applications and the
> performance is not good. The first place to blame is affinity (since
> the same code with Intel MPI and SGI MPI behave as I would want). I
> have run taskset -p $PID on some running processes and I see that the
> mask is ffff, indicating that those processes have no affinity. I
> have tried lots of combinations of MV2_CPU_MAPPING,
> MV2_CPU_BINDING_POLICY, MV2_CPU_BINDING_LEVEL and I get no indication
> of any affinity. I am looking back at my build, I see the message "no
> suitable hwloc found, using internal version". But is there a way to
> verify that that is even working?
Hi Craig,
I suggest setting MV2_SHOW_CPU_BINDING=1 so that the processes will
report their binding.
Since you're running a hybrid application it may take a little work to
determine the best MAPPING to use. I think you would like to set
MV2_CPU_BINDING_LEVEL to either socket or numanode and maybe the
MV2_CPU_BINDING_POLICY=scatter. Depending on the number of MPI
processes and OpenMP processes you're using will determine the exact
mapping you'll want.
Please take a look at the following url for more information.
http://mvapich.cse.ohio-state.edu/support/user_guide_mvapich2-1.8.html#x1-530006.3.1
These environment variables are available with MVAPICH2-1.8.
--
Jonathan Perkins
http://www.cse.ohio-state.edu/~perkinjo
More information about the mvapich-discuss
mailing list