On Aug 22, 2018, at 11:49 AM, Diego Avesani <diego.aves...@gmail.com> wrote: > > I have a philosophical question. > > I am reading a lot of papers where people use Portable Batch System or job > scheduler in order to parallelize their code. > > What are the advantages in using MPI instead?
It depends on the code in question / problem being solved. Embarrassingly parallel problems may lend themselves to submitting a bazillion serial jobs through a job scheduler such as SLURM, Torque, ...etc. (there's other factors that matter, too, such as job length, IO requirements, ...etc.). That is, these serial jobs can run independently of each other, and therefore can run whenever / wherever the scheduler puts them. MPI is not necessary because the jobs don't need to communicate with each other. If there's coordination needed during the compute, however, MPI is helpful because the individual processes can directly communicate (vs. run a job, output the results to stable storage, then fire up the next job to read in those results from stable storage, ...etc.). These requirements are all on a multi-variable spectrum, of course. In most cases, it's clear whether you should choose Monte Carlo-style bazillion-serial-jobs-through-a-scheduler vs. MPI. But there's definitely some cases where a closer examination of requirements is required to determine which would be better (to potentially include a hybrid solution). > I am writing a report on my code, where of course I use openMPI. So tell me > please how can I cite you. You deserve all the credits. Please see https://www.open-mpi.org/papers/. Thanks! -- Jeff Squyres jsquy...@cisco.com _______________________________________________ users mailing list users@lists.open-mpi.org https://lists.open-mpi.org/mailman/listinfo/users