Can parallel-ssh be used to run X jobs on Y servers, each server running Z parallel tasks? #309
Replies: 2 comments 2 replies
-
Hi, Thanks for the interest. Concurrency is controlled by the Waiting for a command to finish before running another on the same host can be done as part of the command/script being run. Ie something like Alternatively put in identical hosts in host list for up to the # of cores per host and make use of Per-Host Command substitution to run multiple individual commands on the same server. Something like
|
Beta Was this translation helpful? Give feedback.
-
Okay I’ll have to take a look closely at the documentation then. Thank you for the answers, appreciate it! |
Beta Was this translation helpful? Give feedback.
-
Hi,
Just discovered parallel-ssh and would be interested in integrating that in my workflow. Currently using GNU parallel with the following scenario: let’s say I have 1000 simulations to run (compiled C executables located on a shared hard drive), and I want to run those onto a cluster of 25 servers, each server having between 8 and 24 CPU cores. I’m using Python as a wrapper for planning the simulations & analyzing their output, the only step where I’m not using Python is to launch said simulations.
Enter parallel-ssh: given that the number of simulations I have to launch exceeds the # of server times the # of cores, I have to wait for simulations to complete then launch another one (GNU parallel excels in doing that — i.e. using all available cores on a group of servers to run a list of tasks in parallel). I’ve searched parallel-ssh’s docs, but it’s not totally clear yet how easy it would be to wait for termination of one process (hence freeing up a core on one of the machines) and then launching another process on that same machine. Is something like this implemented in parallel-ssh?
Thanks!
Beta Was this translation helpful? Give feedback.
All reactions