在我的Linux服务器上,显示了太多的rcuob和rcuos进程。
执行以下命令。
ps auxwwf | grep rcu
如下所示。
root 9 0.0 0.0 0 0 ? S 5月30 0:00 \_ [rcuob/0]
root 10 0.0 0.0 0 0 ? S 5月30 0:00 \_ [rcuob/1]
:
:
root 151 0.0 0.0 0 0 ? S 5月30 0:00 \_ [rcuob/142]
root 152 0.0 0.0 0 0 ? S 5月30 0:00 \_ [rcuob/143]
和
root 154 0.0 0.0 0 0 ? S 5月30 0:11 \_ [rcuos/0]
root 155 0.0 0.0 0 0 ? S 5月30 0:04 \_ [rcuos/1]
:
:
root 296 0.0 0.0 0 0 ? S 5月30 0:00 \_ [rcuos/142]
root 297 0.0 0.0 0 0 ? S 5月30 0:00 \_ [rcuos/143]
服务器的CPU是"英特尔(R)Xeon(R)CPU E5-2630 v3 @ 2.40GHz"
总内存为" 32GB"
和OS是" CentOS Linux版本7.2.1511(核心)"
我不知道它们是什么,如果它们是问题,请告诉我修复它的程序。
答案 0 :(得分:1)
我在RHEL7.2 3.10.0-327.el7上注意到了相同的行为。 https://access.redhat.com/solutions/1404313的标题为 更多" rcuob"和" rcuos"运行的内核线程比在线CPU ,并描述了RCU线程的启动方式与在线CPU的数量不匹配,但可能的CPU数量。它解释了修正版已经发布了勘误表RHSA-2016-2574,内核3.10.0-514.el7。我想CentOS也会有一个修复。
要查看在线CPU的数量和可能的CPU数量:
> cd /sys/devices/system/cpu ; grep '' {online,offline,possible}
online:0-55
offline:56-191
possible:0-191
计算rcuob
和rcuos
内核线程的数量:
> ps aux | awk '/\[(ksoftirqd|migration|watchdog|rcuo)/{print $11}' | sed 's/[0-9]//g' | sort | uniq -c
56 [ksoftirqd/]
56 [migration/]
192 [rcuob/]
192 [rcuos/]
56 [watchdog/]