Overview
You would like to know if there are any concerns with having very low available KiB memory on the server. You recently ran the top -i command to check available server resources and found the following output:
[root@<servername> ~]# top -i
top - 14:47:37 up 56 days, 12:15, 3 users, load average: 1.57, 2.05, 2.08
Tasks: 236 total, 1 running, 211 sleeping, 22 stopped, 2 zombie
%Cpu(s): 2.8 us, 0.7 sy, 0.0 ni, 87.2 id, 8.5 wa, 0.0 hi, 0.1 si, 0.7 st
KiB Mem : 65808008 total, 672080 free, 13923160 used, 51212768 buff/cache
KiB Swap: 24606716 total, 24314876 free, 291840 used. 48082880 avail Mem
Solution
To see how much ram your applications could use without swapping, run free m and look at the "available" column. The /+ buffers/cache indicate the size of RAM that is dedicated directly for read/write for all running application processes.
- Login to a linux system and execute the following command
free -m
- Output of the command is similar to following :
Information on the output is provided below:- Total- Mem : Total Main Memory Allocated to the system
- Total - Swap: Total Swap Memory allocated to the system. This will be borrowed from the Storage, if memory consumption is more than Main memory
- Used - Mem: Main Memory in use. It is ‘calculated’ as
Used Memory = total - free - buffers - cache - Used - Swap: Swap Memory borrowed in case the demand for Memory is more than the available memory
- Free - Mem: This is unused memory, obtained by parsing /proc/meminfo
- Free - Swap: Swap Memory that is not in use at the moment.
- Shared: Used (mostly) by tmpfs file system for interprocess common data or objects.
- Buff/cache: Memory reserved/used by kernel buffers and cache, but maybe made available if not in use and required by another application.
- Available: Estimation of how much memory is available for a new application to use, without using Swap memory.
Linux always tries to use RAM to speed up disk operations by using available memory for buffers (file system metadata) and cache (pages with actual contents of files or block devices). Please note that if a system has been running for a while, a small number can be seen under the free column of the mem row.
Linux intentionally caches data from the disk to increase system responsiveness. While this makes it look like you are low on free memory, from the perspective of the application the cached memory is free.
Therefore there are no concerns here. This is normal and will not cause the server to run out of memory.