thanks for your interesting answer, up to now I expected to get a fully operational openmpi installation package
by installing openmpi from the “science” repository ( http://download.opensuse.org/repositories/science/openSUSE_11.3” ).
To compile your script I need to have the openmpi sources which I do not have at present, I will try to get them.
How do I compile and build using multiple processors?
Is there a special flag which tells the compiler to care for multiple CPUs?
It may be possible that your openmpi does not support threaded MPI-calls (if these are happening). I had a similar problem, and it was traced to this cause. If you installed your openmpi from available repositories, chances are that you do not have thread-support.
Here's a small script that you can use to determine whether or not you have thread support:
int main(int argc, char **argv)
int desired_thread_support = MPI_THREAD_MULTIPLE;
MPI_Init_thread(&argc, &argv, desired_thread_support, &provided_thread_support);
/* check if the thread support has been provided */
std::cout << "MPI thread support not available! Aborted. " << std::endl;
Compile and build as usual, using multiple processors.
Maybe this helps. If you do discover that you do not have support available, you will need to rebuild MPI with --enable-mpi-threads=yes flag.
From: "Theiner, Andre" <firstname.lastname@example.org>
To: "email@example.com" <firstname.lastname@example.org>
Sent: Monday, 16 January 2012, 11:55
Subject: [OMPI users] mpirun hangs when used on more than 2 CPUs
may I have your help on a strange problem?
High performance computing is new to me and I have not much idea about OpenMPI and OpenFoam (OF) which uses the “mpirun” command.
I have to support the OF application in my company and have been trying to find the problem since about 1 week.
The versions are openmpi-1.3.2 and OF 2.0.1 which are running on openSUSE 11.3 x86_64.
The computer is brand new, has 96 GB RAM, 12 CPUs and was installed with Linux some weeks ago.
I installed OF 2.0.1 according to the vendors instructions at http://www.openfoam.org/archive/2.0.1/download/suse.php.
Here the problem:
The experienced user tested the OF with a test case out of one of the vendors tutorials.
He only used the computing power of his local machine “caelde04” , no other computers were accessed by mpirun.
He found no problem when testing in single “processor mode” but in “multiprocessor mode” his calculations hangs when he distributes
the calculations to more than 2 CPUs. The OF vendor thinks this is an OpenMPI problem somehow and that is why I am trying to get
help from this forum here.
I attached 2 files, one is the “decomposeParDict” which resides in the “system” subdirectory of his test case and the other is the log file
from the “decomposePar” command and the mpirun command “mpirun -np 9 interFoam –parallel”.
Do you have an idea where the problem is or how I can narrow it down?
Thanks much for any help.
users mailing list