Hot answers tagged memory-usage
53
The first line means:
total: Your total (physical) RAM (excluding a small bit that the kernel permanently reserves for itself at startup); that's why it shows ca. 11.7 GiB , and not 12 GiB, which you probably have.
used: memory in use by the OS.
free: memory not in use.
total = used + free
shared / buffers / cached: This shows memory usage for specific ...
36
You are experiencing the Linux Ate My Ram issue.
Don't Panic.
This is NOT a problem.
Your system is Working As Designed.
The problem is not your OS -- the problem is your understanding of what "free" memory is.
Unix systems use memory for more than just running programs. Memory might be used for:
Running programs (active/used)
Buffering data in ...
12
This is the same "problem" as from Server refuses to use swap partition and a few other similar questions on this site. ( High Memory Usage on Linux Server, Memory Usage in LINUX, Web Server Running Low in Memory, etc.)
Pay attention to the fact that the memory consumption is from cache. This means it's keeping a file in memory. Cached memory is "free" ...
11
I had the same experience in Nagios when I used the check_mem.pl plugin. When you define the tress hold for critical, you need to use a capital C instead of a normal c.
Like this:
command[check_mem]=/usr/lib/nagios/plugins/check_mem -w 10 -C 5 -f
Then it takes the cached memory in account and it will not send warnings.
11
You've got a total of 156996 KB of memory used for programs, and a further 343684-156996=186688 KB used for buffers & cache. That means that about 22% of memory is used, not 60%.
These buffers are used to store the contents of your disks, either before they're written to the disk, or after they've been read in case you want to read the data again. You ...
10
The SQL Server IS running - whether or not you have Management Studio have open. SQL Server will use as much memory as it needs and can get - by default - you can change that, if you want to limit SQL Server to a certain amount of RAM. But be aware: SQL Server needs a good chunk of RAM to work properly - if you restrict it too much, it'll slow down ...
9
Actually, you are misinterpreting the output of free.
$ sudo free -m
total used free shared buffers cached
Mem: 3957 2746 1211 0 169 2320
-/+ buffers/cache: 256 3701
Swap: 6212 0 6212
This tells you you have 3957 megabytes of memory, of which ...
8
An easy way to see if you need more RAM is to chart the Page Life Expectancy perfmon counter. This counter tells you how long SQL Server thinks that data will be kept in the buffer pool before it needs to make room for other data. You want this number as high as possible. With 6 Gigs of RAM installed (you should have SQL set to max out at probably 4 gigs) ...
8
This is normal. SQL server will always use all available memory, and scale back when the system needs more resources.
THIS article describes what is going on.
When you start SQL Server, SQL Server memory usage may continue to steadily increase and not decrease, even when activity on the server is low. Additionally, the Task Manager and Performance ...
8
Setting overcommit_ratio to 80 is wrong. I cannot stress this enough. Any value less than 100 is wrong and will always be wrong.
The reason for this is that linux applications allocate more than they really need. Say they allocate 4kb to store a couple character string of text. Well thats several KB unused right there. Applications do this a lot, and this ...
8
After re-reading your comments above and your original post - you ran ulimit -a as root - but you said that root is unaffected.
Your issue here is ulimit, but at a user level. Log in as your dan user and run ulimit -a and you will probably find your memory is limited.
7
You have earned Confused by Linux memory usage badge!
Processes are not the only thing eating up memory in Linux. The frequently used files and directory entries are cached in RAM - that's because reading the files from RAM is lots faster than reading them from disk. I bet you didn't take buffers and cached columns into account while calculating the RAM ...
7
However, when I run ps aux, the memory usage of all processes only comes out to 295.9MB, which is a far cry from the 1.7GB of memory that free reports as used.
Why is there such a discrepancy?
Because linux memory management is just plain wacky?
Jokes aside, seriously - memory management in Linux is not a simple beast. There are different ways ...
6
SQL Server will use as much memory as it needs. You don't have to be running SSMS for it to use memory - you have things like the data cache which will cache data in memory when queried to make it faster to retrieve for subsequent calls. Any connections being made to the db server will use memory. It shouldn't be anything to worry about, if the OS needs more ...
6
Not really any way to easily tell because it is entirely dependent on your usage and the application. You're maxing out a database server...how big is the database? What are your transaction stats?
The real-world limitations are obvious in your scenario. You're running for awhile on 6 gig without problem, then it's swapping and thrashing.Thus 6 gig isn't ...
6
FreeBSD has a pretty decent userbase of very knowledgeable people. I wouldn't worry about that too much. Bigger issue would be your personal experience and knowledge on the matter.
Ask yourself (and tell us): why is it so important to have a couple of megs of extra free RAM in your server? What does that gain you? And what does it cost you, both in terms of ...
6
Is this a 64bit server - do you have the lock pages in memory local policy enabled?
SQL is likely consuming the rest of your memory
If you look at the perfmon counters you will see the memory allocation
Here is an article that explains it in depth
You can also view the counters in SQL
SELECT
object_name
,Counter_name
,cntr_value
,ROUND(( ...
6
The GUI-penalty for running servers is a lot less now than it was 10 years ago. So much so that I no longer reflexively turn it off when I'm setting up a new Linux server. If I am RAM constrained in a significant way (couldn't wrangle enough money out of higher management to do it right, or I'm in a RAM-constrained VM for some reason) then I'll disable the ...
6
The main parameter for tweaking Apache's memory usage will be MaxClients. Too low a value and you will run out of available slots to serve client requests. Too many and you will use up all your RAM and begin to use swap space which will kill performance (it may appear to be a server crash).
One way of tuning MaxClients is to observe the system's memory ...
6
You can use this command to see the top 10 applications regarding RAM usage:
ps -A --sort -rss -o comm,pmem | head -n 11
Sometimes this command helps you if many sub processes have been generated:
ps auxf
This way you can see which processes belong together.
6
Running top in batch mode to report memory sizes periodically can be used to see who is using the memory when things go south. Runing sar in batch mode should give some good diagnostics on memory use, and related I/O. Running munin to monitor the system should give you a graph with good detail on what memory is being used for. This may help a lot.
You ...
6
Memory management is already a complex topic, and unfortunately, Microsoft has altered its exact definitions and terms regarding different types of memory with pretty much every single release of Windows. So trust me, you aren't the only one confused by it.
When you use tasklist, tasklist shows you the Working Set that is assigned to each process. A ...
5
Isn't swap supposed to be used only if there's no real memory left?
That's incorrect. When the kernel sees memory pages that have gone unused for a long time, it'll proactively swap them out (even if there is plenty of other free RAM), making that RAM space available for disk cache.
5
This is perfectly normal. If you want memory not to be used, take it out of the server and put it on your desk. Free memory is wasted memory.
Linux, like most modern operating systems, can directly transition memory from one use to another. Making it free in the middle has costs associated with it and no benefits associated with it. So sensible operating ...
5
I started to write an answer to your question, and in looking up the syntax for the exact tools I've used in the past to do this, I came across this post:
http://stackoverflow.com/questions/395569/measuring-memory-use-of-device-drivers-in-windows
The second answer seems to be most closely associated with the two tools I had in mind, namely poolmon and ...
5
As HTTP500 said, you probably shouldn't worry about it unless the machine is actually choking. Take a look at Help! Linux Ate My RAM!. It's not quite an analogous situation, as you have processes rather than buffers using up the RAM, but it's not too far off: your machine's physical RAM is a resource to be used, either with kernel buffers or spare Apache ...
5
Nothing is really using that memory in terms of applications.
You need to deduct the 'cached' value which represents the page cache to get a better idea as to what your actual memory usage is in terms of program usage.
Basically this is good memory management and this is ideally what you want.
See the link here for more infomation: ...
5
All the different SQL server platforms that I know of allow you to configure them, to limit memory use, etc. So the answer is to use one that you actually know or are prepared to learn and spend some time with in order to configure it correctly. I hope this doesn't come across as rude, but the answer is to understand the tools, not to run around hoping that ...
5
If you really think it'll make a difference, just install a 32-bit Apache binary and modules and run that instead. That's the only way to "make 64-bit Apache behave as 32-bit". It's not simple, and a maintenance nightmare, though -- I wouldn't recommend it.
There are a pile of ways to make Apache use less memory, but you're making incremental gains there, ...
5
Dial down your Apache settings. With that level of memory something like:
StartServers 2
MinSpareServers 1
MaxSpareServers 3
MaxClients 10
(Make sure to restart apache)
Running a full LAMP stack on that much memory can be tough to eek by if you see even small amounts of requests.
Only top voted, non community-wiki answers of a minimum length are eligible