mpirun - not enough slots available

43,264

Solution 1

According to https://www.open-mpi.org/faq/?category=running#oversubscribing you could oversubscribe your node using a hostfile. Before proceeding, be careful that this way you can severely degrade the performance of the node. Also, if the system you use to run the application is using a queue system, this may not be valid.

First create a hostfile (named hostfile) containing

localhost slots=25

The simply run your application like

mpirun --hostfile hostfile -np 25 python -c "print 'hey'"

Solution 2

Apparently oversubscribing can be attained using the "--oversubscribe" option with mpirun - did the trick for me with running torque/maui

Share:
43,264
kilojoules
Author by

kilojoules

Updated on October 15, 2020

Comments

  • kilojoules
    kilojoules over 3 years

    Usually when I use mpirun, I can "overload" it, using more processors than there acctually are on my computer. For example, on my four-core mac, I can run mpirun -np 29 python -c "print 'hey'" no problem. I'm on another machine now, which is throwing the following error:

    $ mpirun -np 25 python -c "print 'hey'"
    --------------------------------------------------------------------------
    There are not enough slots available in the system to satisfy the 25 slots 
    that were requested by the application:
      python
    
    Either request fewer slots for your application, or make more slots available
    for use.
    --------------------------------------------------------------------------
    

    Why isn't "overclocking" mpirun working here? Is there a way I can overcome this error message and successfully run with more processors than are available?