There are multiple LSF processes running on each host in the cluster. The type and number of processes running depends on whether the host is a master host or a compute host.
LSF hosts run various daemon processes, depending on their role in the cluster.
LSF daemon |
Role |
---|---|
mbatchd |
Job requests and dispatch |
mbschd |
Job scheduling |
sbatchd |
Job execution |
res |
Job execution |
lim |
Host information |
pim |
Job process information |
elim |
Dynamic load indices |
Master Batch Daemon running on the master host. Responsible for the overall state of jobs in the system.
Receives job submission, and information query requests. Manages jobs held in queues. Dispatches jobs to hosts as determined by mbschd.
Master Batch Scheduler Daemon running on the master host. Works with mbatchd.
Makes scheduling decisions based on job requirements, policies, and resource availability. Sends scheduling decisions to the mbatchd.
Slave Batch Daemon running on each server host including the master host. Receives the request to run the job from mbatchd and manages local execution of the job. Responsible for enforcing local policies and maintaining the state of jobs on the host.
sbatchd forks a child sbatchd for every job. The child sbatchd runs an instance of res to create the execution environment in which the job runs. The child sbatchd exits when the job is complete.
Remote Execution Server (RES) running on each server host. Accepts remote execution requests to provide transparent and secure remote execution of jobs and tasks.
Load Information Manager (LIM) running on each server host. Collects host load and configuration information and forwards it to the master LIM running on the master host. Reports the information displayed by lsload and lshosts.
Static indices are reported when the LIM starts up or when the number of CPUs (ncpus) change.
The LIM running on the master host. Receives load information from the LIMs running on hosts in the cluster.
Forwards load information to mbatchd, which forwards this information to mbschd to support scheduling decisions. If the master LIM becomes unavailable, a LIM on a master candidate automatically takes over.
Process Information Manager (PIM) running on each server host. Started by LIM, which periodically checks on PIM and restarts it if it dies.
Collects information about job processes running on the host such as CPU and memory used by the job, and reports the information to sbatchd.
External LIM (ELIM) is a site-definable executable that collects and tracks custom dynamic load indices. An ELIM can be a shell script or a compiled binary program, which returns the values of the dynamic resources you define. The ELIM executable must be named elim.anything and located in LSF_SERVERDIR.