Amazon EC2インスタンスでメモリを何が使用していますか?


9

現在、インスタンスごとに22 GBのRAMがあると記載されているAmazon EC2で単一のGPUクラスターコンピュートノードを実行しています。topインスタンスには確かに22 GBのRAMがあることを確認していますが、アイドルシステムでは、5〜6 GBのRAMが一貫して使用されているようです。また、この使用が原因であるプロセスを特定することtopps auxできません。

5-6 GBはOSには大きすぎるように見えますが、おそらく私は間違っています。これは、Amazonでの仮想化によるオーバーヘッドになる可能性がありますか?これを追跡する方法に関する他のアイデアや提案はありますか?


1
この計算にメモリキャッシュを含めていますか?proc meminfoの内容を表示すると役立つ場合があります。
Ray Vahey、2011年

回答:


7

かなりの量のメモリが使用されているのは、Linuxがその多くをファイルキャッシュに使用しているためです。

これはおそらくあなたのために物事を明確にするでしょう:

http://www.linuxatemyram.com/


5

あなたが見てみると、トップ、あなたが見る空きメモリがカーネルキャッシュの前の値です。

top - 12:59:25 up 1 day, 15:47,  5 users,  load average: 0.04, 0.10, 0.12
Tasks: 161 total,   1 running, 160 sleeping,   0 stopped,   0 zombie
Cpu(s):  3.5%us,  1.8%sy,  0.0%ni, 94.2%id,  0.4%wa,  0.0%hi,  0.1%si,  0.0%st
Mem:   3985464k total,  3369908k used,   615556k free,   752964k buffers
Swap:  1951740k total,       12k used,  1951728k free,  1439160k cached

私のラップトップは合計3985464キロバイトのメモリです。しかし、Linuxカーネルはそのほとんどを内部的にキャッシュするため、topには619748kBの空きメモリしか表示されません。しかし、freeコマンドを使用してそれを見ると、実際には、ほとんどのメモリがキャッシュで利用できることがわかります。

$ free
             total       used       free     shared    buffers     cached
Mem:       3985464    3365716     619748          0     752796    1439152
-/+ buffers/cache:    1173768    2811696
Swap:      1951740         12    1951728

実際の空きメモリは、バッファ/キャッシュラインに表示されるメモリです。

             total       used       free     shared    buffers     cached
-/+ buffers/cache:    1173768    2811696

このマシンの2.8GBの空きメモリ。


キャッシュの役割が理解できないので、これはかなり混乱しています。「Linuxカーネルが[合計メモリ3985464k]の大部分をキャッシュするとはどういう意味ですか?あなたは、状態top、その後にのみ示して別の番号を、しかし、唯一のショーは、他の数が少なくなることを意味し、まだ数あなた引用が多いです。ここにスクラッチのスマイリーを挿入します。
Adam
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.