Por que alguns caches não são dropáveis?

1

Aqui está a saída de free -m :

              total        used        free      shared  buff/cache   available
Mem:            421         158         153          39         109         195
Swap:             0           0           0

Eu executei echo 3 > /proc/sys/vm/drop_caches para descartar todos os possíveis caches, mas o valor buff/cache ainda permanece em 109MB. O que mantém esses caches? Posso soltá-los de alguma forma?

O sistema usado é o XUbuntu 16.04.

Alguns desses caches (43mb) são provavelmente usados pelo tmpfs:

tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=43188k,mode=700,uid=1000,gid=1000)

Que deixa mais espaço para explicar.

Saída de df -mt tmpfs :

Filesystem     1M-blocks  Used Available Use% Mounted on
tmpfs                 43     3        40   7% /run
tmpfs                211     1       211   1% /dev/shm
tmpfs                  5     1         5   1% /run/lock
tmpfs                211     0       211   0% /sys/fs/cgroup
tmpfs                 43     1        43   1% /run/user/1000
    
por Rogach 09.11.2016 / 21:37

1 resposta

1

$ man free

buffers Memory used by kernel buffers (Buffers in /proc/meminfo)

cache Memory used by the page cache and slabs (Cached and Slab in /proc/meminfo)

buff/cache Sum of buffers and cache

available Estimation of how much memory is available for starting new applications, without swapping. Unlike the data provided by the cache or free fields, this field takes into account page cache and also that not all reclaimable memory slabs will be reclaimed due to items being in use (MemAvailable in /proc/meminfo, avail‐ able on kernels 3.14, emulated on kernels 2.6.27+, otherwise the same as free)

Portanto, não é de admirar que buff/cache não caia para perto de 0. O verdadeiro problema é que available não leva em consideração o total total de free e buff/cache . A diferença de memória do mistério é de cerca de 65MB. (Não tenho certeza se tmpfs alocações são refletidas sensatamente aqui; novamente, isso deve ser trivial para testar). Eu não sei se a "Estimativa" está prevista para quebrar neste momento.

    
por 10.11.2016 / 09:14