The output of the top command shows that 29GB of memory is used by "buff/cache". What does it mean and how I can free it? It is near to 90% of memory.
1 Answers
You don't need to free "buff/cache".
"buff/cache" is memory that Linux uses for disk caching, and that will be freed whenever applications require it. So you don't have to worry if a large amount is being shown in this field, as it doesn't count as "used" memory.
Quoted from http://www.linuxatemyram.com (emphasis mine):
Both you and Linux agree that memory taken by applications is "used", while memory that isn't used for anything is "free".
But how do you count memory that is currently used for something, but can still be made available to applications?
You might count that memory as "free" and/or "available". Linux instead counts it as "used", but also "available". (...) This "something" is (roughly) what top and free calls "buffers" and "cached". Since your and Linux's terminology differs, you might think you are low on ram when you're not.

- 29,602
-
2
-
2i got a problem with WSL2 linux, it is cache in wsl linux, but it's the real amount of RAM that windows allocated for – Dan D. Jun 14 '20 at 09:54
-
cat /proc/meminfo
. If that's not the case, please say so, and a short answer might be written, because I can't find any other question to mark this one as a duplicate of :-). – sourcejedi May 28 '19 at 11:01