How do I tell pvbatch to use only some specific number of processes?
I have tried with the two versions of mpiexec (see below the output of where.exe command) with different -np X where X is an integer between [2, 10], but on the tasks manager as shown in the screenshot above, the CPU usage always looks the same.
# for mpiexec command I tried: mpiexec, the first absolute path of mpiexec, and the second absolute path as well
# X is an integer
mpiexec -np X pvbatch orbiting_around_a_box.py
You say that pvbatch is using all your CPU cores even when you run it without mpi, it means that its not mpi using all your core, but its the native multithreading support of VTK that is using all your cores.
The number of cores used by the native multithreading support can be controlled using the environment variable, VTK_SMP_MAX_THREADS.
So I think my question still holds: I don’t want to use multithreading or whatever, just want to use MPI with many processes to run pvbatch as linked in the documentation.
Sorry, But this is so confusing. What is this SMP thing? Why do I need it? What has this to do with ParaView? Why it is not documented? … many questions.
I do believe that this deserve some explanation, or some context (I tried to read the blog post you linked, but it is too technical and not clear).