web-dev-qa-db-ja.com

myのrcuosおよびrcuobプロセスが多すぎるVM

2 CPUと6 GBのVMwareゲストとしてCentOS 7.2 (3.10.0-327.18.2.el7.x86_64)を実行していますRAM 32 GB RAMのLenevo W540 iCore 7で。

VMにrcuosとrcuobのそれぞれに128のプロセスが表示されます。これらのプロセスはシステムのコアの数と等しいはずなので、これは正しく聞こえません。

VM時々フリーズします。

CPUの数と等しいrcuosおよびrcuobプロセスの数を制限する方法はありますか?.

VM GuestでCPUの数を1に減らしましたが、それでもrcuosとrcuobの数はそれぞれ128です。

次に、maxcpus=0をカーネルブートパラメーターとして追加し、rcuosrcuobの数をそれぞれ1に減らしましたが、VMに割り当てるコアを増やす必要があります。コアを1つだけ使用すると、アプリケーションのパフォーマンスが40%低下します。

3
Vikram

Linuxカーネルについての私の知識は非常に限られていて、それをどのように調整するかについてです。投稿して別のカーネルブートパラメーターnr_cpus here に遭遇した後もグーグルを続け、VMでこれを2(CPU数)に設定した後、2つのrcuosプロセスとrcuocプロセスしか表示されなくなりました。

これは私のために働いたものです。

編集する

/ etc/default/grub
nr_cpus = 2
grub2-mkconfig -o /boot/grub2/grub.cfg
 $ ps aux | grep rcu 
 root 8 0.0 0.0 0 0? S 23:04 0:00 [rcu_bh] 
 root 9 0.0 0.0 0 0? S 23:04 0:00 [rcuob/0] 
 root 10 0.0 0.0 0 0? S 23:04 0:00 [rcuob/1] 
 root 11 0.0 0.0 0 0? R 23:04 0:00 [rcu_sched] 
 root 12 0.0 0.0 0 0? S 23:04 0:00 [rcuos/0] 
 root 13 0.0 0.0 0 0? S 23:04 0:00 [rcuos/1] 
2
Vikram

このタイプのカーネルスレッドが多すぎるのはバグであり、エラータによって https://access.redhat.com/solutions/140431 で対処されています https://rhn.redhat.com/ errata/RHSA-2016-2574.html であり、kernel-3.10.0-514以降で修正されています。 RedHatはこれを2016年11月に公開したので、CentOSで利用できるようになると確信しています。

カーネルを更新して再起動します。 rcousスレッドの通常の数が表示されます。私の場合、normalは実際には0であり、6コアVMの約95から減少しました。

0
Otheus

VMwareでこの問題を解決する別の方法:

Vmをオフにします。

設定の編集>オプション>詳細設定>メモリ/ CPUホットプラグ

「CPUホットプラグ」で、「この仮想マシンのCPUホットプラグ」を無効にします。

電源オン。

問題が解決しました。

0
Andre Mariano