Arch Linuxがkhugepagedから応答しなくなります


8

私はVMwareワークステーション10.0.3のヘビーユーザーで、システムに32GBのRAMを搭載しています。私の唯一のオペレーティングシステムは、デスクトップにUnityを使用するArch Linuxです。

通常、それぞれに約3GBのRAMが割り当てられた2つの仮想マシンを実行している場合、非常に頻繁にランダムな間隔で、システム全体が数秒間応答しなくなります。

端末で "top"を実行している場合、犯人はkhugepagedコマンドのようです。これは、システムが100%のCPUで応答しなくなってから消えるコマンドです。

これを回避する方法はありますか?私はkhugepagedについてググってみましたが、2011年の古代の投稿または未回答の質問しか見つけられないようです。

これらは私の完全なシステム仕様です:

  • CPU:Intel i5 4570@3.2GHz
  • 32GB Corsair Vengeance RAM @ 2400MHz
  • M / B ASrock Z87 Pro 4

スワップ設定はどのようなものですか?そのようなハングは、多くの場合、スワップの使用に関連しています。次にハングしたときにスワップを確認できますか?積極的にスワップしたときにのみハングしますか?
terdon

なぜ32GB RAMに交換する必要があるのですか?物理RAMを使い尽くすことはできません。私は小さな1GBのスワップパーティションを持っています-SSD上にあり、不動産を無駄にしたくなかったからです。私はswappinessを変更していません、それはデフォルト値にあると思います。
Angelos Kyritsis 2014年

まあ、archのデフォルトは60に設定されています。つまり、RAMがなくなる前にスワップが開始されます。確かにスワップだと言っているわけではありませんが、おそらくスワップのようです。値を小さくしてみてください。
terdon

OK、5に設定しました。違いがあった場合はお知らせします。
Angelos Kyritsis 2014年

回答:


10

Ubuntuでも同様の問題があります。私が使用する回避策は次のとおりです。

echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag

回避策のソースは、Fedoraのバグレポート「khugepagedeating 100%CPU」にあります。バグは修正されませんでした。

これはそれほど劇的ではなく、transparent_hugepageサポート全体を無効にします。コマンドが行うことの詳細な説明は、透過的なhugepageサポートのドキュメントに記載されています


echo never | sudo tee /sys/kernel/mm/transparent_hugepage/defrag; echo 0 | sudo tee /sys/kernel/mm/transparent_hugepage/khugepaged/defrag
トレビノ

トレビノ@、私は違いが答えの著者が提案されているものには何であるか尋ねることがあります。なぜ1は、使用する必要があります| sudo teeの代わりに>
Joma

1
@Jomaはsudo echo $value > outputUbuntuでは機能しません。teeトリックを使用するか、sudo -sシェルから実行する必要があります。
トレビノ

真剣に、私は@ pawel-jasinskiを愛しています。これは、ホストOSとゲストOSの両方を定期的にフリーズすることなく、VMwareで実際に作業できる5年ぶりのことです。
Simon A. Eugster 2018

1
@Joma最初のコマンドはルートシェルから実行する必要があります。を使用するとsudo echo X > Yecho Xはrootとしてのみ実行され> Yますが、(出力をファイルに転送)は実行されません。
Simon A. Eugster 2018

1

khugepagedが問題である可能性があります。以下を試してください。

echo never > /sys/kernel/mm/transparent_hugepage/enabled

これは、最近のArch Linuxでこの問題を解決するのに役立ちました...


4
こんにちは、サイトへようこそ!ここでは、回答をもう少し詳しく説明します。あなたは、おそらく可能性があり、編集あなたの答えを、あなたが示唆するコマンドが何をするのかを説明し、それが役立つだろうか?
terdon

1
@ArchUserまた、これがソリューションであるかどうかわからない場合は、コメントとして投稿してください。
vfbsilva 2015年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.