Re: [OMPI users] scheduling to real cores, not using hyperthreading (openmpi-2.1.0)

2017-04-12 Thread Heinz-Ado Arnolds
Dear Gilles, thanks for your answer. - compiler: gcc-6.3.0 - OpenMP environment vars: OMP_PROC_BIND=true, GOMP_CPU_AFFINITY not set - hyperthread a given OpenMP thread is on: it's printed in the output below as a 3-digit number after the first ",", read by sched_getcpu() in the OpenMP test

Re: [OMPI users] scheduling to real cores, not using hyperthreading (openmpi-2.1.0)

2017-04-12 Thread Gilles Gouaillardet
That should be a two steps tango - Open MPI bind a MPI task to a socket - the OpenMP runtime bind OpenMP threads to cores (or hyper threads) inside the socket assigned by Open MPI which compiler are you using ? do you set some environment variables to direct OpenMP to bind threads ? Also, how do

Re: [OMPI users] scheduling to real cores, not using hyperthreading (openmpi-2.1.0)

2017-04-12 Thread r...@open-mpi.org
Open MPI isn’t doing anything wrong - it is doing exactly what it should, and exactly what you are asking it to do. The problem you are having is that OpenMP isn’t placing the threads exactly where you would like inside the process-level “envelope” that Open MPI has bound the entire process to.

Re: [OMPI users] scheduling to real cores, not using hyperthreading (openmpi-2.1.0)

2017-04-12 Thread Heinz-Ado Arnolds
Dear rhc, to make it more clear what I try to achieve, I collected some examples for several combinations of command line options. Would be great if you find time to look to these below. The most promise one is example "4". I'd like to have 4 MPI jobs starting 1 OpenMP job each with 10