mpirun
e mpiexec
sono fondamentalmente gli stessi: il nome del processo di avvio in molte implementazioni MPI. Lo standard MPI non dice nulla su come i ranghi dovrebbero essere avviati e controllati, ma raccomanda (anche se non richiede) che, se c'è un lanciatore di qualsiasi tipo, dovrebbe essere chiamato mpiexec
. Alcune implementazioni MPI sono state avviate con mpirun
, quindi hanno adottato mpiexec
per la compatibilità. Altre implementazioni hanno fatto il contrario. Alla fine, la maggior parte delle implementazioni fornisce il proprio launcher sotto entrambi i nomi. In pratica, non dovrebbero esserci differenze in ciò che fanno mpirun
e mpiexec
.
Diverse implementazioni di MPI hanno diversi metodi di avvio e controllo dei processi. MPICH è iniziato con un'infrastruttura chiamata MPD (Multi-Purpose Daemon o qualcosa del genere). Quindi passò al nuovo gestore dei processi Hydra. Poiché Hydra fa cose in modo diverso rispetto a MPD, lo mpiexec
basato su Hydra accetta diversi argomenti da riga di comando rispetto a quello basato su MPD e per consentire agli utenti di selezionare esplicitamente quello basato su Hydra, viene reso disponibile come mpiexec.hydra
. Il vecchio si chiama mpiexec.mpd
. È possibile avere una libreria MPI basata su MPICH che fornisce solo il launcher Hydra e quindi mpiexec
e mpiexec.hydra
sarà lo stesso eseguibile. Intel MPI è basato su MPICH e le sue versioni più recenti utilizzano il gestore del processo Hydra.
Open MPI è basato su Open Run-Time Environment (ORTE) e il proprio avvio di processo si chiama orterun
. Per compatibilità, orterun
è anche collegato come mpirun
e mpiexec
.
In sintesi:
mpiexec.something
è una versione specifica del processo di lanciatore MPI per una data applicazione
mpiexec
e mpirun
sono i nomi generici, di solito copie o collegamenti simbolici a lanciatore attuale
- sia
mpiexec
sia mpirun
dovrebbero fare lo stesso
- alcune implementazioni denominano il proprio launcher
mpiexec
, alcuni lo chiamano mpirun
, alcuni lo chiamano entrambi e questo è spesso fonte di confusione quando più di una implementazione MPI è disponibile simultaneamente nei percorsi di sistema (ad es. quando installato da pacchetti di distribuzione)
fonte
2016-05-22 07:54:34
Possibile duplicato di [Qual è il miglior progresso di Hydra MPI] (http://stackoverflow.com/questions/6091397/whats-the-best-advance-of-hydra-mpi) –
@JohnZwinck Ciao, JohnZwinck. Io non la penso così Conosco quel post, ma dopo averlo letto, continuo a non capire. Così ho fatto questo post – user15964