Running OpenFOAM on a Cluster
Hi
im new to openfoam we have a cluster with one master node nd a client node with passwordless ssh enabled nd running openfoamv6 on both the machines with the case directories present in both nodes i get the following error when i try to run the case with foamJob. I read the other post where i got to know that it is environment problem so how to i set the environment properly? your help will be highly appreciated the following is the error. mpirun was unable to find the specified executable file, and therefore did not launch the job. This error was first reported for process rank 3; it may have occurred for other processes as well. NOTE: A common cause for this error is misspelling a mpirun command line parameter option (remember that mpirun interprets the first unrecognized command line token as the executable). Node: client1 Executable: /opt/openfoam6/bin/foamJob regards, Rishab |
Have you tried to run the case separately on each machine? Can you specify the command you have type?
|
Hi,
yes ive tried running the case individually on the machines it runs perfectly the command is mpirun --hostfile machines -np 6 foamJob simpleFoam -parallel regards Rishab |
U don't need foamJob in this command. Just type "mpirun --hostfile machines -np 6 simpleFoam -parallel"
|
yes ive done that too...i get the same error!
|
Can you type "which simpleFoam" on both computers and show us the output
|
this is what i get when i type which simpleFoam on master and on client
/opt/openfoam6/platforms/linux64GccDPInt32Opt/bin/simpleFoam |
What error does it show when you type "mpirun --hostfile machines -np 6 simpleFoam -parallel". Can you paste here?
|
this is the error i get when i type mpirun --hostfile machines np -6 simpleFoam -parallel
mpirun was unable to find the specified executable file, and therefore did not launch the job. This error was first reported for process rank 3; it may have occurred for other processes as well. NOTE: A common cause for this error is misspelling a mpirun command line parameter option (remember that mpirun interprets the first unrecognized command line token as the executable). Node: client1 Executable: /opt/openfoam6/bin/simpleFoam |
I can see that it is trying to look for simpleFoam at /opt/openfoam6/bin/simpleFoam but the actual location is /opt/openfoam6/platforms/linux64GccDPInt32Opt/bin/simpleFoam on client 1, so it says cannot find the executable file.
How did you install OpenFoam? Do you use the same method to install them on both computers? |
yes ive used the same method to install openfoam described in this website
https://openfoam.org/download/6-ubuntu/ |
Hi
when i type "mpirun --hostfile machines -np 6 simpleFoam -parallel" i get the following error [mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141] [[57312,0],0] usock_peer_send_blocking: send() to socket 39 failed: Broken pipe (32) [mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141] [[57312,0],0] ORTE_ERROR_LOG: Unreachable in file oob_usock_connection.c at line 316 [mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141] [[57312,0],0]-[[57312,1],0] usock_peer_accept: usock_peer_send_connect_ack failed -------------------------------------------------------------------------- mpirun was unable to find the specified executable file, and therefore did not launch the job. This error was first reported for process rank 3; it may have occurred for other processes as well. NOTE: A common cause for this error is misspelling a mpirun command line parameter option (remember that mpirun interprets the first unrecognized command line token as the executable). Node: client1 Executable: /opt/openfoam6/platforms/linux64GccDPInt32Opt/bin/simpleFoam when i type "mpirun --hostfile machines -np 6 foamJob simpleFoam -parallel" i get the following error Application : simpleFoam Executing: /opt/openfoam6/platforms/linux64GccDPInt32Opt/bin/simpleFoam -parallel > log 2>&1 & Application : simpleFoam Executing: /opt/openfoam6/platforms/linux64GccDPInt32Opt/bin/simpleFoam -parallel > log 2>&1 & -------------------------------------------------------------------------- mpirun was unable to find the specified executable file, and therefore did not launch the job. This error was first reported for process rank 3; it may have occurred for other processes as well. NOTE: A common cause for this error is misspelling a mpirun command line parameter option (remember that mpirun interprets the first unrecognized command line token as the executable). Node: client1 Executable: /opt/openfoam6/bin/foamJob |
Let's first make sure you can run on one node. What do you get when you run just this:
runParallel simpleFoam -parallel mpirun -np 3 simpleFoam -parallel And what do you get when you run: mpirun --hostfile machines -np 6 hostname |
Hi
when i run "runParallel simpleFoam -parallel" this is what i get :- runParallel: command not found when i run "mpirun -np 3 simpleFoam -parallel" the solver starts running this is what i get :- /*---------------------------------------------------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org \\ / A nd | Version: 6 \\/ M anipulation | \*---------------------------------------------------------------------------*/ Build : 6-1a0c91b3baa8 Exec : simpleFoam -parallel Date : Aug 23 2018 Time : 21:54:51 Host : "mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141" PID : 9239 I/O : uncollated Case : /home/mpiuser/OpenFOAM/mpiuser-6/run/tutorials/incompressible/simpleFoam/24-30-8.50 nProcs : 2 Slaves : 1("rishabghombal-HP-15-Notebook-PC.9240") Pstream initialized with: floatTransfer : 0 nProcsSimpleSum : 0 commsType : nonBlocking polling iterations : 0 sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10) allowSystemOperations : Allowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Overriding OptimisationSwitches according to controlDict maxThreadFileBufferSize 2e+09; maxMasterFileBufferSize 2e+09; Create mesh for time = 0 SIMPLE: Convergence criteria found p: tolerance 1e-05 U: tolerance 1e-05 "(k|epsilon|)": tolerance 1e-05 Reading field p Reading field U Reading/calculating face flux field phi Selecting incompressible transport model Newtonian Selecting turbulence model type RAS Selecting RAS turbulence model kEpsilon RAS { RASModel kEpsilon; turbulence on; printCoeffs on; Cmu 0.09; C1 1.44; C2 1.92; C3 0; sigmak 1; sigmaEps 1.3; } No MRF models present No finite volume options present Starting time loop Time = 1 smoothSolver: Solving for Ux, Initial residual = 1, Final residual = 0.0205988, No Iterations 4 smoothSolver: Solving for Uy, Initial residual = 1, Final residual = 0.0245561, No Iterations 4 smoothSolver: Solving for Uz, Initial residual = 1, Final residual = 0.0245738, No Iterations 4 GAMG: Solving for p, Initial residual = 1, Final residual = 0.0767341, No Iterations 5 time step continuity errors : sum local = 0.027811, global = 0.0131447, cumulative = 0.0131447 smoothSolver: Solving for epsilon, Initial residual = 0.0859358, Final residual = 0.00617931, No Iterations 3 bounding epsilon, min: -1031.63 max: 13226.2 average: 851.478 smoothSolver: Solving for k, Initial residual = 1, Final residual = 0.0955549, No Iterations 6 ExecutionTime = 60.07 s ClockTime = 60 s Time = 2 when i run "mpirun --hostfile machines -np 6 hostname" this is what i get :- mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141 which is the (master) mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141 which is the (client) |
Quote:
|
these are the contents of my machines file
master slots=3 client slots=3 when i type "mpirun -V" i get :- mpirun (Open MPI) 2.1.1 Report bugs to http://www.open-mpi.org/community/help/ |
Try this:
mpirun -np 6 -hostfile machines hostname It should output: master master master client client client |
when i type "mpirun -np 6 -hostfile machines hostname" this is what i get :-
mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141 mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141 mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141 mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:7604 mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:7604 mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:7604 just like master master master client client client but instead of master it gives out mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141 which is the master node and instead of client it gives out mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:7604 which is the client node |
Ok, that looks correct . What you showed earlier was only:
master master Now try: source /path/toopenfoam/installation/etc/bashrc run cd to job folder then do: mpirun -np 6 -hostfile machines simpleFoam -parallel |
when i type "source /opt/openfoam6/etc/bashrc" i dont get anything like nothing happens
when i type "mpirun -np 6 -hostfile machines simpleFoam -parallel" this is what i get:- [mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141] [[57312,0],0] usock_peer_send_blocking: send() to socket 39 failed: Broken pipe (32) [mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141] [[57312,0],0] ORTE_ERROR_LOG: Unreachable in file oob_usock_connection.c at line 316 [mpiuser-HP-ProDesk-400-G2-MT-TPM-DP:03141] [[57312,0],0]-[[57312,1],0] usock_peer_accept: usock_peer_send_connect_ack failed -------------------------------------------------------------------------- mpirun was unable to find the specified executable file, and therefore did not launch the job. This error was first reported for process rank 3; it may have occurred for other processes as well. NOTE: A common cause for this error is misspelling a mpirun command line parameter option (remember that mpirun interprets the first unrecognized command line token as the executable). Node: client Executable: /opt/openfoam6/platforms/linux64GccDPInt32Opt/bin/simpleFoam |
All times are GMT -4. The time now is 09:26. |