running pyFoam(Plot)Runner.py in parallel
Hello everybody!
I have troubles starting a case in parallel (only local on one machine with multiple cores). If I type Code:
pyFoamRunner.py --procnr=2 simpleFoam Code:
PyFoam WARNING on line 144 of file /home/fem/OpenFOAM/PyFOAM-0.6.0/lib/python2.7/site-packages/PyFoam/Execution/ParallelExecution.py : which can not find a match for simpleFoam . Hoping for the best The weird thing is: Without the parallel options (thus on a single core) pyFoamRunner.py works properly! And on top: If I start a parallel run "manually" with Code:
mpirun -np 2 simpleFoam -parallel Does anyone know, what to do? I really like pyFoam an would like to use it furthermore. Thanks an advance. Regards Sebastian |
Quote:
I think there is something problematic with the settings: http://openfoamwiki.net/index.php/Co...yFoam#Settings Check with pyFoamDumpConfiguration.py and look for the [MPI]-section. It should look somehow like this: Code:
options_openmpi_post: ["-x","PATH","-x","LD_LIBRARY_PATH","-x","WM_PROJECT_DIR","-x","PYTHONPATH","-x","FOAM_MPI_LIBBIN","-x","MPI_BUFFER_SIZE","-x","MPI_ARCH_PATH"] To check which call to mpirun is actually used you can add this configuration option (will also print a lot of other things): Code:
[Debug] |
This is working for me with OF-2.2 and PyFoam-0.6.0:
Code:
pyFoamPlotRunner.py mpirun -np 12 simpleFoam -parallel | tee log/simpleFoam.log |
Quote:
|
Hello gschaider!
Direct hit with first shot! Yesterday I have edited the pyfoamrc file to get things working on different machines over network. I deleted the changes again and now it works. There are two warnings again (see appending log), but the solver starts nonetheless. I've read about the deprecated parameter on the openMPI homepage, but as long as it is working, this won't be any of my concerns. The same applies to the FOAM_MPI_LIBBIN. Of course any suggestions for improvement are very welcome nevertheless! Thanks a lot for helping me with this issue! Reminding me of parallel computing with different machines: Is it necessary to distibute the according data on every node (with copying data on every node or via NFS)? I've read about MPI, that it can't "push" the data itself to every node automatically... Regard Sebastian Code:
PyFoam WARNING on line 144 of file /home/fem/OpenFOAM/PyFOAM-0.6.0/lib/python2.7/site-packages/PyFoam/Execution/ParallelExecution.py : which can not find a match for simpleFoam . Hoping for the best |
Quote:
Quote:
|
which can't find my solver
I have created my own solver which is based on solidDisplacementFoam in 2.3.x. I get the first warning that has been shown above:
Code:
PyFoam WARNING on line 144 of file /usr/local/lib/python2.7/dist-packages/PyFoam/Execution/ParallelExecution.py : which can not find a match for convergeFracWidthFoam . Hoping for the best Thanks in advance. |
Quote:
|
The code is able to find my solver. However, it does not run as it should. I tried replacing my modified solver (convergeFracWidthFoam) with solidDisplacementFoam and the code worked using this command:
Code:
run=BasicRunner(argv=["solidDisplacementFoam","-case",work.name],lam=machine) Code:
run=AnalyzedRunner(CONVERGED,silent=True,argv=["solidDisplacementFoam","-case",work.name],lam=machine) However when I replace solidDisplacementFoam with convergeFracWidthFoam in either of the above options, the code does not go through the iterations. In fact for the BasicRunner case it gives me the following error: Code:
PyFoam WARNING on line 144 of file /usr/local/lib/python2.7/dist-packages/PyFoam/Execution/ParallelExecution.py : which can not find a match for convergeFracWidthFoam . Hoping for the best I understand that this is a problem of creating a solver that can run in parallel. Can you help me out here? |
Quote:
My guess is that it is the common DidASumCalculationAndDividedByItWhichFailsInParall elBecauseOnOneProcessorTheSumIsZeroAndIDidntDoARed uce-bug. But it is hard to tell from your output because it is from a Release-version: before you do anything else compile yourself a Debug version. Stack-traces are much clearer (they even include the line numbers of where the problem occurred) and a lot of common errors are uncovered because of the bound-checking |
similar error message
Hi I use PyFoam for parametric evaluation (it's an amazing tool I'm only just figuring out).
So I have scripted a series of templated cases for my custom solver. The output I get everytime throws a "hoping for the best" warning error: Code:
PyFoam WARNING on line 144 of file /usr/local/lib/python2.7/dist-packages/PyFoam/Execution/ParallelExecution.py : which can not find a match for apfSolidFoam . Hoping for the best Code:
-------------------------------------------------------------------------- Code:
So like is there any option I through to PlotRunner to just continue through into the next case after that seg fault? Because the seg fault is at the end of the run so I dont care. That would be hecca useful. (I am worried that it'd be default behavoir, but somehow it doesn't happen for me. Like the story of my life). Thanks, Eric PS I use this config: Code:
print("Running solver") |
All times are GMT -4. The time now is 11:49. |