LSF - LSF会使用什么cgroup子系统?

14 篇文章 18 订阅

LSF - LSF会使用什么cgroup子系统?



前言

资源调度与任务管理系统之一LSF,在HPC行业得到广泛使用。那么LSF是如何精确地进行资源管理的呢?答案是需要开启其被管理主机的Control Groups(cgroups)功能。


一、哪些cgroup子系统会被使用到?

默认情况下,LSF会使用3个cgroup子系统:freezer,cpuacct,memory。如果job有CPU亲和性资源请求,则还会使用cpuset子系统。

二、LSF是如何使用cgroups子系统的?

freezer

LSF使用Linux cgroup freezer子系统来跟踪作业进程,以进行作业控制。
通过cgroup进行的进程跟踪,可以捕获不在现有作业的进程树中且具有与现有job ID不同的进程组ID的job进程,或者运行时间很短的job进程(这些短命进程,往往LSF没有机会,在定期或按需过程中找到它们(被PIM发起请求))。

cpuacct

LSF直接从该job的cpuacct子文件夹,获取cpu审计数据。Sbatchd先检查cgroup cpuacct子系统是否挂载,如果未挂载,会往日志写一条失败信息,然后不开启基于cgroup的cpu与memory审计。

memory

LSF在支持cgroups的系统上,能实现严格的主机级别memory与swap限制,并且这些限制不能被超过。
如果job进程使用的memory,超过了定义的限制,该job会立即被cgroup memory子系统kill掉。
请注意,memory限制是job级或主机级的,不是task级的。

cpuset

当CPU亲和性绑定打开,LSF会创建一个cpuset来包含job进程(如果job有CPU亲和性请求的话),这样的job进程无法从分配的CPU核逃出来。


总结

以上就是LSF通过cgroups来对资源进行精细化管理的介绍。

如有疑问,请留言讨论。

参考资料

Which cgroup subsystems will be used by LSF?

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王万林 Ben

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值