Platform LSF Reference Version 6.2
PluginModule Section
Platform LSF Reference
370
contains sample plugin code. See Using the Platform LSF SDK for more detailed
information about writing, building, and configuring your own custom scheduler
plugins.
schmod_jobweight
An optional scheduler plugin module to enable Cross-Queue Job Weight scheduling
policies. The
schmod_jobweight plugin must be listed before schmod_cpuset and
schmod_rms, and after all other scheduler plugin modules.
You should not use job weight scheduling together with fairshare scheduling or job
preemption. To avoid scheduling conflicts, you should comment out
schmod_fairshare and schmod_preemption in lsb.modules.
RB_PLUGIN
Description
RB_PLUGIN specifies the shared module name for resource broker plugins. Resource
broker plugins collect and update job resource accounting information, and provide it
to the scheduler.
Normally, for each scheduler plugin module, there is a corresponding resource broker
plugin module to support it. However, the resource broker also supports multiple plugin
modules for one scheduler plugin module.
For example, a fairshare policy may need more than one resource broker plugin module
to support it if the policy has multiple configurations.
A scheduler plugin can have one, multiple, or none RB plugins corresponding to it.
Example
NAME RB_PLUGIN
schmod_default ()
schmod_fairshare (rb_fairshare)
Default
Undefined
SCH_DISABLE_PHASES
Description
SCH_DISABLE_PHASES specifies which scheduler phases, if any, to be disabled for
the plugin. LSF scheduling has four phases:
1
Preprocessing—the scheduler checks the readiness of the job for scheduling and
prepares a list of ready resource seekers. It also checks the start time of a job, and
evaluates any job dependencies.
2
Match/limit—the scheduler evaluates the job resource requirements and prepares
candidate hosts for jobs by matching jobs with resources. It also applies resource
allocation limits. Jobs with all required resources matched go on to order/allocation
phase.
Not all jobs are mapped to all potential available resources. Jobs without any
matching resources will not go through the Order/Allocation Phase but can go
through the Post-processing phase, where preemption may be applied to get
resources the job needs to run.
3
Order/allocation—the scheduler sorts jobs with matched resources and allocates
resources for each job, assigning job slot, memory, and other resources to the job.
It also checks if the allocation satisfies all constraints defined in configuration, such
as queue slot limit, deadline for the job, etc.