Linux - ServerThis forum is for the discussion of Linux Software used in a server related context.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Distribution: Centos 7 x86_64 , Rocky Linux 8 (aarch64)
Posts: 196
Rep:
Committed_AS in /proc/meminfo
Hi geeks,
I am some clarification in statistics of Committed_AS.
As per different docs, it is "The amount of memory presently allocated on the system. The committed memory is a sum of all of the memory which has been allocated by processes, even if it has not been "used" by them as of yet."
OR
The total amount of memory required in the worse case scenario right now if all the applications actually used what they asked for at startup!
As that document says, this (optional) kernel feature tracks how much memory processes have askedfor, as a means of assuring that they will actually be able to get it.
Physical memory resources are allocated on-demand: when you actually "touch" a page, a physical page-frame is allocated. When that page needs to be swapped out, a swap-frame is allocated. And so on. Absent this control mechanism, it would therefore be possible for processes to malloc(), say, 1 gigabyte of memory, only to discover (the hard way ...) that physical resources have been overcommitted such that the request can never actually be satisfied.
A separate control allows you to regulate how much memory an application is allowed to askfor.
Incidentally, this is very useful for "busy web/AJAX servers," especially if those servers use widely-variable amounts of RAM to service the requests that they will receive. It can be used to prevent memory overcommit and subsequent system crashes. Properly used, it can prevent the server from attempting to get into a situation where successful completion of all requests cannot be guaranteed. Because it operates at a level higher than that of any application (i.e. "the kernel"), it can enforce system stability in a way that application-level controls cannot. It also makes the kernel specifically aware of what is going on ... both in terms of "actual resource demand" and "commitments of those resources" (application behavior).
Last edited by sundialsvcs; 12-28-2016 at 08:26 AM.
Was there any resolution to this in the past years? I am observing Committed_AS being smaller than used memory (as reported by free, or the difference between MemTotal and MemAvailable) on a set of CentOS 7 servers. Things just don't add up.
Was there any resolution to this in the past years? I am observing Committed_AS being smaller than used memory (as reported by free, or the difference between MemTotal and MemAvailable) on a set of CentOS 7 servers. Things just don't add up.
free reports usage of application memory plus memory in use by disk caching (not application memory). Refer to available memory in your free command output and reference that with Committed_AS.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.