LSF Handbook
搜索文档…
项目模式抢占
仅当没有免费许可证时,抢占才会发生。 在抢占期间,项目会将借来的许可证释放给拥有许可证的项目(现在有需求)。
使用支持作业暂停的许可证的作业会释放其令牌,并自动从被暂停的位置恢复。 使用不支持挂起的许可证的作业将被杀死,并从头开始重新启动。
抢占仅适用于项目模式,并且根据您的配置考虑以下因素:
  • 运行时(具有最小运行时间的作业通常会先被抢占)
  • 公平分享设置
  • 所有权
  • 优先权
  • 最小的作业优先权
根据项目的设置方式(无论它们是否处于同一级别),您的抢占权是固定的还是分层的。
  • 抢占限制
  • LSF 抢占与 License Scheduler 抢占

基本抢占与配置的项目

发生抢占时,许可证调度程序将计算每个项目的令牌使用量。 该计算将考虑正在使用的令牌,必需的令牌以及令牌所有权值。
根据令牌的使用情况,许可证调度程序确定需要令牌的项目以及包含太多令牌的项目。
  • 属于需要令牌的项目的作业将首先进行调度,并按项目 Fairshare 设置进行排序。
  • 如果需要,属于具有额外令牌的项目的作业将被优先抢占,并按项目公平共享设置和每个作业运行的时间长度进行排序。

PRIORITY 部分

如果在 “Project” 部分中配置了项目 “PRIORITY”,则项目的排序顺序基于优先级,其中优先级较高的项目最后被抢占。

PREEMPT_ORDER 部分

如果在 “Feature” 部分中将 “ PREEMPT_ORDER” 设置为 “ BY_OWNERSHIP”,则按所有权对项目进行排序。
  • 首先安排所有权最高的项目。
  • 拥有权最小的项目优先。
此设置将覆盖基本优先级和 PRIORITY

ENABLE_MINJOB_PREEMPTION 部分

如果 ENABLE_MINJOB_PREEMPTION = Y,则抢占作业的数量将最小化。 具有额外令牌的项目按 PRIORITY (如果已配置)或 fairshare 排序。 然后按 RUSAGE 排序作业。
RUSAGE 较高的作业被抢先,以最大程度减少被抢占的工作。
除基本优先权或 PRIORITY 外,还使用此设置。

配置项目组的分层抢占

配置项目组后,将层次结构引入项目配置中,将应用层次结构优先。
有两种优先级的抢占方法:
  1. 1.
    自上而下(默认):抢占发生在表兄弟姐妹之间,而不是兄弟姐妹之间。 结果是在整个项目层次结构之间取得优先权。
  2. 2.
    自下而上(如果 LS_PREEMPT_PEER = Y):兄弟姐妹可以互相抢占。 结果是首先要在一系列项目中平衡先发制人。
例如,您的项目设置如下:
img
在自上而下的抢占中,如果 P8 需要令牌,它将抢占 P1,P2 或 P3(关系更远的关系),而不抢占 P6 或 P7(P8的兄弟姐妹)。
在自下而上的抢占中,P8 抢占了其同级(P6 或 P7)。

限制

分层抢占还受到项目上任何限制的影响。 如果已经达到限制(在层次结构的任何级别),则许可调度程序会考虑将下一个可能的节点抢占。