LoginSignup
29
31

More than 5 years have passed since last update.

メモリ使用量についてのメモ

Last updated at Posted at 2012-07-17

最近、ちょっと調べてみたのでメモ。

全体のメモリ使用量

$ free
             total       used       free     shared    buffers     cached
Mem:       1697880     217852    1480028          0       9736      68932
-/+ buffers/cache:     139184    1558696
Swap:       917500         16     917484

こんな感じで表示される

-/+ buffers/cache

usedが実際に使用されているメモリ。

プロセス毎のメモリ使用量

  • RSSでソート
$ ps aux --sort -rss
  • VSZでソート
$ ps aux --sort -vsize

これでメモリを食ってるプロセスを特定できる。

  • RSSの合計
$ ps aux | tail -n +2 | awk -F' ' '{sum += $6} END {print sum}'

で計算できる。(共有メモリとかもあるだろうから実際よりも多めな数字)

それでもメモリが少ない?

Zabbixを見るとやたらUsedが少ないマシンがあった。

役割が同じ別のマシンをみるともっとUsedは少ない。

psでプロセス毎の使用量見てみると差がなかった。

  • meminfoを見てみる
$ cat /proc/meminfo
MemTotal:        1697880 kB
MemFree:         1476812 kB
Buffers:           11360 kB
Cached:            70192 kB
SwapCached:           12 kB
Active:           149724 kB
Inactive:          34712 kB
Active(anon):      89184 kB
Inactive(anon):    13996 kB
Active(file):      60540 kB
Inactive(file):    20716 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:        917500 kB
SwapFree:         917484 kB
Dirty:             31400 kB
Writeback:             0 kB
AnonPages:        102900 kB
Mapped:            58332 kB
Shmem:               296 kB
Slab:              16120 kB
SReclaimable:       8636 kB
SUnreclaim:         7484 kB
KernelStack:         784 kB
PageTables:         7008 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     1766440 kB
Committed_AS:     240912 kB
VmallocTotal:   34359738367 kB
VmallocUsed:        9272 kB
VmallocChunk:   34359727456 kB

これをみた時にSlabの値が大きく違った。(Usedの差分とほぼ同じくらい)

これはカーネル内のメモリ領域らしい。

だから、別に異常な状態ではなかった。

キャッシュ周りを解放する

別に解放しなくてもいいのだけど一応手順を。

  • ページキャッシュのみ解放
# echo 1 > /proc/sys/vm/drop_caches
  • Slabキャッシュのみ解放
# echo 2 > /proc/sys/vm/drop_caches
  • ページキャッシュとSlabキャッシュを解放
# echo 3 > /proc/sys/vm/drop_caches
29
31
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
29
31