![]() |
OpenFOAM with Inifiband & parallel efficiency
Hi foamers,
I feel mad about my extremely slow parallel computing efficiency. I have modified channelFoam to perform DNS of pipe flow. The mesh is around 4 million. Each node has 8cores, but I only use 4 cores in each node. Because I found when I use 6cores or 8cores each node, the computing time does not less than 4 cores each node. What is more, when I use 6 nodes, that is 24 cores, the computing time almost the same as the 20 cores. I don't know why. The interconnect of my cluster is infiniband. I know from other thread that the parallel efficiency and scallability of IB are better than GigE and 10GigE, but the OpenFOAM shouled be recompiled. Unfortunately, I don't know wheather my recompiling procedure is right: • Modify OpenFOAM-1.6/etc/bashrc to use MPI entry rather OPENMPI (WM_MPLIB:=MPI). • Change MPI entry within settings.sh to system OpenMPI (export MPI_HOME=/usr/mpi/gcc/openmpi-1.4.2). • Add the following to wmake/rules/linux64Gcc/mplib PFLAGS= -DOMPI_SKIP_MPICXX PINC = -I$(MPI_ARCH_PATH)/include PLIBS = -L$(MPI_ARCH_PATH)/lib64 –lmpi Then ./Allwmake in ThirdParty directory and OpenFOAM-1.7.1 After that, I performed parallel simulation, but error occured: bash: orted: Command not found Any one can help me? Thank you very much in advance. |
Hi,
you have changed from openMPI to MPI, but do you have MPI libraries installed correctly ? Since it cant find orted it is either not there or the path variable is not set properly. gregor |
Hi, gregor. Somenone told me another method to use infiniband. If it works, I will let you know
|
Quote:
I am doing DNS with a code based on OF. For a mesh with 128*128*128 cells, the speedup of 4096 processors is about 1000. I am also testing with a finer mesh and wish to obtain a better scalability. |
Quote:
|
Quote:
the solvers you used before are the re-compiled solvers from other place? Anyway, I suggest you use the local mpi and recompile the OF. |
Quote:
If you are using 128x128x128 mesh, it is very likely that you are using cartesian mesh. Why are you using openFOAM for it?? You can write yourself a 100 times faster solver than openFOAM for it since direct solution to poisson problem in uniform cartesian mesh is available. Or I am mistaken and your mesh is not cartesian?? |
Quote:
I am using unstructured mesh for complex geometry. The 128x128x128 mesh is non-uniform and used for the benchmark channel flow. |
Quote:
1 mpirun -np 16 --hostfile machine --mca btl self,openib dnsPisoFoam -parallel 2 mpirun -np 16 --hostfile machine --mca btl self,tcp dnsPisoFoam -parallel 3 mpirun -np 16 --hostfile machine dnsPisoFoam -parallel The first and the third means cost almost the same time, while the second mean costs more time But still the scalability cannot be improved. |
Quote:
|
Quote:
|
Quote:
how many cores you are using and what is your time per iteration?? One week for 130million cells and 50000 time steps should be acceptable, is it not?? |
Quote:
|
Quote:
I really doubt it. I tried running a 130 million case with 32 processors (with my software NOT openFOAM) and if I could manage 5000 steps in 1 week I would gladly take it. I really doubt openFOAM is faster than my solver. |
Quote:
|
Quote:
|
| All times are GMT -4. The time now is 02:33. |