psid — the ParaStation MPI daemon. The organizer of the ParaStation MPI software architecture.
psid [-v?] [-d level
] [-f configfile
] [-l logfile
] [--usage]
The ParaStation MPI daemon is implemented as a Unix daemon process. It supervises allocated resources, cleans up after application shutdowns, and controls access to common resources. Thus, it takes care of tasks which are usually managed by the operating system.
The local daemon is usually started by executing psiadmin(1). If it is not running at the time a ParaStation MPI process
is starting, the inetd(8) or xinetd(8)
daemon is starting up psid
automatically. The daemon can also be started using the command line.
Parameters can be given at the command line or in the configuration file
inetd.conf(5) or xinetd.conf(5). Most of the parameters can also be given in the ParaStation MPI
configuration file parastation.conf(5).
As an alternative, the psid can be installed
as a service using the start/stop script
/etc/init.d/parastation
.
Nodes without a running ParaStation MPI daemon are not visible within the cluster. Be aware of the fact that psiadmin(1) usually only starts the local daemon. All other daemons managing the nodes configured to belong to the cluster may be started using the add directive from within the ParaStation MPI administration tool psiadmin(1).
If psiadmin(1) is started with the -s
option, all daemons within the cluster will be started automatically.
The ParaStation MPI daemon must always run with root privileges.
Before a process can communicate with the ParaStation MPI system, it has to register with the daemon. Access may be granted or denied. The daemon can deny the access due to several reasons:
the ParaStation MPI system library of the process and the ParaStation MPI daemon are incompatible.
the daemon is in a state where it does not accept new connections.
insufficient resources.
the user is temporally not allowed to access ParaStation MPI (see psiadmin(1)).
the group is temporally not allowed to access ParaStation MPI (see psiadmin(1)).
the number of processes exceed the maximum set by psiadmin(1).
The ParaStation MPI daemon can restrict the access to the communication subsystem to a specific user or a maximum number of processes. This enables the cluster to run in an optimized way, since multiple processes slow down application execution due to scheduling overhead. (See psiadmin(1), set user, set group and set maxproc for this features.)
All ParaStation MPI daemons are connected to each other. They exchange local information and transmit demands of local processes to the psid of the destination node. With this cooperation, the ParaStation MPI system offers a distributed resource management.
The ParaStation MPI daemon spawns and kills client processes on demand of a parent process. The ParaStation MPI system transfers remote spawning or killing requests to the daemon of the destination node. Then operating system functionality is used to spawn and kill the processes on the local node. The spawned process runs with same user and group id as the spawning process. The ParaStation MPI system redirects the output of spawned process to the terminal of the parent process.
-d
, --debug=level
Activate the debugging mode and set the debugging level to
level
. If debugging is enabled, i.e. if
level
is larger than 0
and option -l
is set to
stdout
, no
fork(2) is made on startup, which is usually done in order
to run psid as a daemon process in background.
The debugging level of the daemon can also be modified during runtime using the set psiddebug command of psiadmin(1).
Be aware of the fact that high values of
level
lead to excessively much debugging
output spoiling the
syslog(3)
or the logfile.
-f
, --configfile=file
Choose file
to be the ParaStation MPI
configuration file. The default is to use
/etc/parastation.conf
.
-l
, --logfile=file
Choose file
to be the destination
for logging output. file
may be the name
of an ordinary file or stdin
or
stdout
. The default is to use
syslog(3) for any logging output.
-v
, --version
Output version information and exit.
-?
, --help
Show a help message.
--usage
Display a brief usage message.