加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

很好的水平不适用于Linux

发布时间:2020-12-14 02:49:01 所属栏目:Linux 来源:网络整理
导读:我有一些高度浮点密集型进程,只做很少的I / O.一个称为“xspec”,它计算数值模型并每秒将浮点结果返回给主进程(通过stdout).它被剔在19层.我有另一个简单的过程“cpufloattest”,它只是在紧密循环中进行数值计算.它没有被剔除. 我有一个禁用超线程的4核i7系
我有一些高度浮点密集型进程,只做很少的I / O.一个称为“xspec”,它计算数值模型并每秒将浮点结果返回给主进程(通过stdout).它被剔在19层.我有另一个简单的过程“cpufloattest”,它只是在紧密循环中进行数值计算.它没有被剔除.

我有一个禁用超线程的4核i7系统.我已经开始了每种类型的流程中的4个.为什么Linux调度程序(Linux 3.4.2)没有正确限制niced进程占用的CPU时间?

Cpu(s): 56.2%us,1.0%sy,41.8%ni,0.0%id,0.0%wa,0.9%hi,0.1%si,0.0%st
Mem:  12297620k total,12147472k used,150148k free,831564k buffers
Swap:  2104508k total,71172k used,2033336k free,4753956k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                         
32399 jss       20   0 44728  32m  772 R 62.7  0.3   4:17.93 cpufloattest                                    
32400 jss       20   0 44728  32m  744 R 53.1  0.3   4:14.17 cpufloattest                                    
32402 jss       20   0 44728  32m  744 R 51.1  0.3   4:14.09 cpufloattest                                    
32398 jss       20   0 44728  32m  744 R 48.8  0.3   4:15.44 cpufloattest                                    
 3989 jss       39  19 1725m 690m 7744 R 44.1  5.8   1459:59 xspec                                           
 3981 jss       39  19 1725m 689m 7744 R 42.1  5.7   1459:34 xspec                                           
 3985 jss       39  19 1725m 689m 7744 R 42.1  5.7   1460:51 xspec                                           
 3993 jss       39  19 1725m 691m 7744 R 38.8  5.8   1458:24 xspec                                           

如果我启动了8个cpufloattest进程,调度程序会按照我的预期进行操作,其中4个进行处理(即4个用大部分CPU,4个用很少)

解决方法

我发现了导致这个问题的原因.这是由于CFS调度程序的“自动组”功能.如果我做
echo 0 > /proc/sys/kernel/sched_autogroup_enabled 

然后一切都像你期望的那样.当好的0进程正在运行时,漂亮的19个进程将降至接近零的CPU使用率.

我将尝试确切地找到自动组合正在做什么来打破我的使用案例并更新这个答案.

编辑…我和IRC上的一些内核人员聊了聊,他们只是说我应该禁用它,如果它对我的工作负载不起作用,那只是一个Linus喜欢的疯狂补丁.我不确定为什么自动分组不喜欢我的工作量,但这个答案适用于遇到类似问题的人.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读