O uso de memória não se soma - o que está usando minha memória?

2

Meu computador (que está executando o Ubuntu Server 16.04) está atualmente usando 13,4 GB de 15,4 GB de RAM (de acordo com o htop), mas estou tentando entender o que está usando essa memória.

free -m relatórios:

              total        used        free      shared  buff/cache   available
Mem:          15733       13781        1083          22         868        1592
Swap:         71524         430       71094

top mostra a maior memória usando o processo como tendo 6,8% de memória e o segundo maior tendo 0,4% de memória.

Se eu usar ps aux | awk '{print $6/1024 " MB\t\t" $11}' | sort -n , ele mostrará o (mesmo) processo que usa a memória mais alta do que 1104 MB de RAM, o que parece correto em comparação com top .

Se eu somar todos os valores de cada processo relatado por ps:

ps aux | awk '{sum=sum+$6}; END {print sum/1024 " MB"}'

relata um total de 1,8 GB de RAM usado.

Portanto, ps calcula que estou usando 1,8 GB de RAM, mas free e htop calculam que estou usando mais de 13 GB de RAM. A coluna available na saída free é muito pequena para explicar essa diferença.

O que estou perdendo?

Edit 2017-01-20 13:27 Z

/usr/bin/free -h relatórios:

total used free shared buff/cache available Mem: 15G 13G 417M 22M 1.1G 1.2G Swap: 69G 432M 69G

saída de slabtop:

$ sudo slabtop -s c -o | head -n 20
 Active / Total Objects (% used)    : 16552394 / 17903627 (92.5%)
 Active / Total Slabs (% used)      : 841391 / 841391 (100.0%)
 Active / Total Caches (% used)     : 109 / 155 (70.3%)
 Active / Total Size (% used)       : 9510904.12K / 9753117.86K (97.5%)
 Minimum / Average / Maximum Object : 0.01K / 0.54K / 18.56K

  OBJS ACTIVE  USE OBJ SIZE  SLABS OBJ/SLAB CACHE SIZE NAME
1764956 1764890   0%    1.08K 120388       29   3852416K zio_cache
126780 126308   0%   16.00K  68205        2   2182560K zio_buf_16384
1797996 1797996 100%    0.85K 100920       18   1614720K dnode_t
1952240 1833842   0%    0.50K 122015       16    976120K kmalloc-512
 62255  61308   0%    8.00K  20096        4    643072K kmalloc-8192
1999648 1968319   0%    0.28K  71416       28    571328K dmu_buf_impl_t
1764892 1764892 100%    0.26K  56932       31    455456K sa_cache
2028978 1981994   0%    0.19K  96618       21    386472K dentry
 23113  23021   0%   12.00K  11557        2    369824K zio_buf_12288
694975 647514   0%    0.31K  27799       25    222392K bio-1
1660096 1592262   0%    0.12K  51878       32    207512K kmalloc-128
131376  91798   0%    1.00K   8211       16    131376K ecryptfs_inode_cache
 90888  89352   0%    1.05K   3035       30     97120K ext4_inode_cache

$ sudo slabtop -s c -o | tail -n +8 | awk '{sum=sum+$7}; END {print sum/1024 " MB"}'' reports:
11484.9 MB

$ sudo slabtop -s c -o | tail -n +8 | grep zio | awk '{sum=sum+$7}; END {print sum/1024 " MB"}'
6222.28 MB

Então, parece que é algo a se fazer pelo ZFS do que eu posso dizer - o ZFS está ocupando mais de 6 GB de RAM e há cerca de 5 GB usados por coisas não-zio na saída do slabtop.

    
por DrAl 20.01.2017 / 13:14

0 respostas