Hello, please how to discover what is eating my RAM and SWAP so i can kill it and regain more space?
The GUI tools like Task manager or Usage shows apps has minimal RAM usage, but the total RAM and SWAP usage indicators are both nearly 100% and computer start lagging:
$ free;sudo ps_mem|tail;sudo systemd-swap
38.6 MiB + 39.3 MiB = 77.9 MiB netdata (2)
50.0 MiB + 53.0 MiB = 102.9 MiB app3
64.2 MiB + 106.4 MiB = 170.6 MiB Xorg
106.1 MiB + 121.6 MiB = 227.7 MiB QtWebEngineProcess (8)
204.6 MiB + 222.9 MiB = 427.4 MiB thunderbird
676.8 MiB + 684.3 MiB = 1.3 GiB app2 (2)
864.2 MiB + 1.1 GiB = 1.9 GiB firefox (12)
4.8 GiB
total used free shared buff/cache available
Mem: 15918 12912 2110 237 895 2352
Swap: 6911 3952 2958
. accept_threshold_percent 90
. compressor zstd
. enabled Y
. max_pool_percent 80
. same_filled_pages_enabled Y
. zpool z3fold
Zswap:
. . duplicate_entry 0
. . pool_limit_hit 0
. . pool_total_size 1791172608
. . reject_alloc_fail 0
. . reject_compress_poor 0
. . reject_kmemcache_fail 0
. . reject_reclaim_fail 0
. . same_filled_pages 139521
. . stored_pages 992033
. . written_back_pages 0
. . compress_ratio 44%
. . zswap_store/swap_store 4063367168/4144939008 98%
swapD:
. NAME TYPE SIZE USED PRIO
swapFC:
. NAME TYPE SIZE USED PRIO
. /var/lib/systemd-swap/swapfc/1 file 256M 215,7M 50
. /var/lib/systemd-swap/swapfc/2 file 256M 175M 49
. /var/lib/systemd-swap/swapfc/3 file 256M 186,3M 48
. /var/lib/systemd-swap/swapfc/4 file 256M 174,2M 47
. /var/lib/systemd-swap/swapfc/5 file 256M 183M 46
. /var/lib/systemd-swap/swapfc/6 file 256M 177,7M 45
. /var/lib/systemd-swap/swapfc/7 file 256M 161,9M 44
. /var/lib/systemd-swap/swapfc/8 file 256M 171,3M 43
. /var/lib/systemd-swap/swapfc/9 file 256M 174,5M 42
. /var/lib/systemd-swap/swapfc/10 file 256M 146,6M 41
. /var/lib/systemd-swap/swapfc/11 file 256M 166,2M 40
. /var/lib/systemd-swap/swapfc/12 file 256M 160,2M 39
. /var/lib/systemd-swap/swapfc/13 file 256M 158,5M 38
. /var/lib/systemd-swap/swapfc/14 file 256M 184,1M 37
. /var/lib/systemd-swap/swapfc/15 file 256M 188,6M 36
. /var/lib/systemd-swap/swapfc/16 file 256M 197,7M 35
. /var/lib/systemd-swap/swapfc/17 file 256M 172,6M 34
. /var/lib/systemd-swap/swapfc/18 file 256M 143,4M 33
. /var/lib/systemd-swap/swapfc/19 file 256M 129,2M 32
. /var/lib/systemd-swap/swapfc/20 file 256M 110,9M 31
. /var/lib/systemd-swap/swapfc/21 file 256M 100,1M 30
. /var/lib/systemd-swap/swapfc/22 file 256M 94,4M 29
. /var/lib/systemd-swap/swapfc/23 file 256M 94,6M 28
. /var/lib/systemd-swap/swapfc/24 file 256M 80M 27
. /var/lib/systemd-swap/swapfc/25 file 256M 84,8M 26
. /var/lib/systemd-swap/swapfc/26 file 256M 66,7M 25
. /var/lib/systemd-swap/swapfc/27 file 256M 54,5M 24
Netdata shows that the ZFS ARC size (zfs.arc_size) is:
type, GBytes
arcsz, 7.17
target, 7.17
min (hard limit), 0.49
max (high water)7.77
( full ARC stats here )
In:
ls /sys/module/zfs/parameters/|grep arc|grep -E "max|limit"
i have found some files that may be relevant:
zfs_arc_max
0
Description of these mem. parameters:
- Module Parameters — OpenZFS documentation : “zfs_arc_max - Maximum size of ARC in bytes. If set to 0 then the maximum ARC size is set to 1/2 of system RAM”
- ZFS Memory Management Parameters - Oracle® Solaris 11.3 Tunable Parameters Reference Manual
Here an user is using 500MB ARC cache max on 3GB computer
but here is said “for every TB of data, you’ll want at least 1GB of RAM for caching ZFS metadata”
Here suggested that the value may need to be changed in /etc/modprobe.d/zfs.conf instead
/proc/spl/kmem/slab output here
I am wondering how to discover what is using RAM and SWAP so i can kill it, because my system becomes slow sometimes and restarting is not ideal sometimes.
Regarding ZF$, how would you tune it, so it is using less memory or how to make it to give more priority to other apps than to itself regarding memory consumption? Any command ideas how to shed more light on this?
Obviously i am looking to get more physical RAM, but i want to know what is using RAM and how to reduce its RAM usage (obviously at a cost of more disk operations).
Btw. ontopic quote:
To free pagecache, dentries and inodes:
echo 3 > /proc/sys/vm/drop_caches
This is a non-destructive operation and will only free things that are completely unused.
RE: earlyoom, i have tried to install it just now, not so easy, unsure if will help. nohang-git is in AUR, i have not tried it, not sure if is better. thx btw: here the list of tools that may help in OOM conditions.