关于性能的增强功能

以下增强功能会影响性能。

提高了调度效率

LSF 引入了一些对作业分派控制的增强功能,以提高调度效率:

  • LSF 现在可以在调度周期结束之前在决策包中发布作业决策。 在 LSF 发布决策包中的决策之前可以累积的最大作业决策数为 300 ,或者您可以通过在 lsb.params 文件中指定 JOB_DISPATCH_PACK_SIZE 参数来更改此值:

    JOB_DISPATCH_PACK_SIZE=整数

  • lsf.conf 文件中 LSB_MAX_JOB_DISPATCH_PER_SESSION 参数的缺省值已更改为 15000。 先前的缺省值为 Min (MAX(300, Total CPUs), 3000)。 如果 JOB_DISPATCH_PACK_SIZE 参数在 lsb.params中设置为 0 ,那么缺省值将还原为此先前的缺省值。
  • 现在可以指定作业调度时间间隔阈值时间。 mbschd 在常规作业调度阶段和回填阶段期间检查阈值,并在调度周期超过此时间时跳过其余作业。 要指定阈值时间,请向 lsb.params 文件中的 JOB_SCHEDULING_INTERVAL 参数添加第二个数字 (以秒计):

    JOB_SCHEDULING_INTERVAL=最小时间 [ms] [ 最大时间 ]

    请勿指定低于平均调度时间的时间,因为这会降低调度效率。 运行 badmin perfmon view 命令以确定平均值,可用于确定要为最大调度周期时间设置的合理值。 缺省最大值为 45 秒。

  • lsb.params 文件中 MAX_SBD_CONNS 参数的缺省值将更改为 2 * numOfHosts + 300。 先前的值为 numOfHosts + (2 * LSB_MAX_JOB_DISPATCH_PER_SESSION)+200。 这意味着 mbatchdsbatchd 之间的最大打开文件连接数不再取决于 LSB_MAX_JOB_DISPATCH_PER_SESSION 参数,因为 LSF 现在会持久存储 sbatchd 连接。

缩短了 LSF 响应时间

LSF 引入了一些增强功能来缩短 LSF 响应时间:

  • 在每个调度周期内, mbatchd 接受的与 mbatchd 端口的新客户机连接的最大数目将从先前值 1 增加到缺省值 6。 现在,您可以通过在 lsf.conf 文件中指定新的 LSF_ACCEPT_NUMCLIENTS 参数来更改此值:

    LSF_ACCEPT_NUMCLIENTS=整数

  • 对于从新浮动客户机提交的作业, LSF 已缩短了 mbatchd 客户机验证的响应时间。
  • badmin hopen -i lockbadmin hclose -i lock 命令选项现在使用 mbatchd 来执行主机列表上的任务。 先前,这些命令由客户机逐个向每个主机发出。
  • 显示共享集群资源的主机的 lsload -slshosts -sbhosts -s 命令现在显示ALL而不是显示集群中的每个单独主机 (如果集群配置为允许所有主机共享资源)。 有关更多信息,请参阅 不显示 "所有" 共享资源的所有单个主机
  • 现在,您可以启用 mbatchdmbschd 守护程序以忽略 GPU 资源。 这意味着显示 LSF 资源的 lsload -slsload -lbhosts -l 命令不再显示有关 GPU 资源的信息。 即,这些选项不显示gpu_<num>n资源,这将缩短 LSF 响应时间,因为要管理和显示的 LSF 资源更少。 要使守护程序能够忽略 GPU 资源,请在 lsf.conf 文件中指定 LSF_GPU_RESOURCE_IGNORE=Y 。 如果使用的是 LSF RTM,请勿启用,否则 LSF RTM 将不会显示主机 GPU 信息。 有关更多信息,请参阅 使用 LSF 资源显示 GPU 资源

放宽对已完成的简短作业复用资源分配的其他约束

LSF 现在允许您放宽对可对已完成作业复用资源分配的暂挂作业的其他约束。

RELAX_JOB_DISPATCH_ORDERlsb.paramslsb.queues 文件中的现有参数,它使 LSF 能够允许具有公共资源需求的多个作业在已完成作业的同一资源分配上连续运行。 为确保不违反限制, LSF 会选择属于同一用户且具有其他公共属性的暂挂作业。

LSF 现在允许您进一步放宽对可复用已完成作业的资源分配的暂挂作业的约束。 这允许更多作业复用资源分配,但可能导致暂时违反资源限制和策略,因为这些限制和策略已放宽。

要放宽约束,请在 RELAX_JOB_DISPATCH_ORDER 参数中使用 SHARE[] 关键字。 SHARE[] 关键字指定在确定哪些暂挂作业可以复用已完成作业的资源分配时, mbatchd 守护程序不再需要应用的约束。 如果作业已完成,并且 LSF 找不到具有相同用户或其他公共属性的任何暂挂作业,那么 LSF 将考虑 SHARE[] 关键字中的规范。 在 SHARE[] 中为 LSF 指定一个或多个以下关键字,以同时考虑以下暂挂作业:

SHARE[[user] [group] [project]]

用户
未与已完成作业具有相同作业所有者的暂挂作业。
未与已完成作业所在的公平共享组 (bsub -G 命令选项) 关联的暂挂作业。
项目
未分配给与已完成作业相同的项目 (bsub -P 命令选项) 的暂挂作业。
例如,如果没有具有相同公共属性的暂挂作业,请设置以下内容以允许属于不同用户且与不同公平共享组相关联的暂挂作业也复用资源分配:
RELAX_JOB_DISPATCH_ORDER=SHARE[user group]

如果使用 LSF 多集群功能,那么 RELAX_JOB_DISPATCH_ORDER 仅适用于转发的作业。