9.2. Hostfiles
Hostfiles (sometimes called “machine files”) are a combination of two things:
A listing of hosts on which to launch processes.
Optionally, limit the number of processes which can be launched on each host.
Hostfile syntax consists of one node name on each line, optionally including a designated number of “slots”:
# This is a comment line, and will be ignored
node01 slots=10
node13 slots=5
node15
node16
node17 slots=3
...
Blank lines and lines beginning with a # are ignored.
A node name may carry the account PRRTE is to use when reaching that
node, written in front of it and separated by a single @:
user01@node01 slots=4
An entry may contain at most one @; a second one is reported as a
parse error naming the hostfile and the line it is on.
A “slot” is the PRRTE term for an allocatable unit where we can launch
a process. See the section on definition of the term slot for a
longer description of slots.
In the absence of the slot parameter, PRRTE will assign either the
number of slots to be the number of CPUs detected on the node or the
resource manager-assigned value if operating in the presence of an
RM.
Important
If using a resource manager, the user-specified number of slots is capped by the RM-assigned value.
A hostfile given to a job that is being submitted to an already-running
DVM selects within the DVM’s allocation: it names the subset of nodes
that job may use, and a slots count smaller than the node’s own is
the number of slots that job may take there. It says nothing about how
big the node is, so it applies to that job alone — the node is
back to its allocated size for the next job, which may be someone
else’s. Changing the allocation is what --add-hostfile is for.