LSF Version 7.3 - Administering Platform LSF

EGO-enabled SLA scheduling
356 Administering Platform LSF
Key concepts
ENABLE_DEFAULT_EGO_SLA in lsb.params is required to turn on
EGO-enabled SLA scheduling.
The host resources assigned to LSF are subject to EGO resource allocation policies.
Hosts are given to an SLA based on EGO allocation decisions; LSF decides which
jobs and how many from each SLA will run.
All LSF compute host resource management is delegated to Platform EGO, and all
LSF hosts are under EGO control. When all jobs running in the default SLA finish,
all allocated hosts are released to EGO after the default idle timeout of 120 seconds
(configurable by MAX_HOST_IDLE_TIME in
lsb.serviceclasses).
Hosts allocated to a specific EGO-enabled SLA cannot be used by jobs belonging to
other SLAs. Idle hosts are released back to EGO.
All hosts are
dynamic for
workload
scheduling
To ensure that all host resources are allocated to your jobs exclusively through EGO,
you should not have host names configured statically in batch configuration files
(
lsb.hosts, lsb.queues, etc.). As a scheduling feature, all host resources are
allocated dynamically to LSF workload by EGO. They flow in and out of LSF so that
the number of hosts available to EGO-enabled SLAs grows and shrinks with
demand, as represented by the velocity goals of the SLAs, and the number of
pending jobs in the system.
LSF still maintains the visibility of all hosts —they are still displayed by
bhosts, but
they are not usable for scheduling unless they have been allocated to LSF by EGO.
Special LSF host
group for
EGO-enabled SLA
When hosts are allocated to an EGO-enabled SLA, they are automatically added to
an LSF host group created by the SLA. The name of the host group is
_sla_sla_name, where sla_name is the name of the EGO-enabled SLA defined in
lsb.serviceclasses or in ENABLE_DEFAULT_EGO_SLA in lsb.params. One
of the hosts in the host group will have the name
_virtual.
When the host is released to EGO, the entry is removed from the host group.
bmgroup displays the hosts allocated by EGO to the host group created by the SLA.
By default, all hosts that are not allocated to LSF by EGO are closed with reason
Closed by EGO. Hosts are opened only when they are assigned by EGO. When LSF
returns them to EGO it closes them again.
Run
bmgroup to display the hosts dynamically allocated by EGO to the host group
created by the SLA.
EGO consumers
mapped to SLAs
Multiple EGO consumers are mapped to different service classes in
lsb.serviceclasses. This enables LSF to allocate job resources to SLAs with
different workload priorities and demand requirements (for example, projects with
different priorities, or daytime versus nighttime workload). At the same time,
EGO-enabled SLAs ensure hosts are shared appropriately and reclaimed through
EGO by the consumers that own them.
Jobs are submitted to the appropriate SLA, and EGO allocates hosts for the job
according to the ownership and distribution policies of the consumers associated
with the SLA. All other LSF jobs that do not explicitly define an SLA run under the
SLA defined by ENABLE_DEFAULT_EGO_SLA in
lsb.params.