spectralDNS / shenfun

High performance computational platform in Python for the spectral Galerkin method

Home Page:http://shenfun.readthedocs.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

testing parallelization

francispoulin opened this issue · comments

I have tried to test my code to see how efficient the parallelization is in going from 1,2,4,8 and 16 cores and I've found some odd behaviour. Even if I use mpiexec -np 1, top says that it can use 4 or 5 cores. In general this would be a bonus, but it means that I can't really test the scalability.

Why is it that my shenfun, or more generally, python script can use more than the number of cores I specify?

Is there a way to enforce this request?

I think there's something fishy here. mpirun -np 1 starts only one Python process. Could the other Python processes be hanging from some previous runs that did not quit as expected?

It seems that it was running on multiple threads, even though I didn't ask it to do so. When I set the number of threads to 1, as written below, then it does stay to one core.

Sorry for the bother.

`export OMP_NUM_THREADS=1`