Ubuntu server: How can I see what processes are using memory?

I'm trying to figure out what's eating all 4G of memory on my server but top/vmstat/free/ps auc, etc. aren't really telling me anything.
I can see that the system is using all the ram, but I can't tell exactly *what* is using it.
I've tried stopping mysql (which I would have thought was the culprit) but that didn't help.
If you look at the output below, top only shows mysql using 7.2% of memory...what's eating the rest of it?
top - 19:18:03 up  6:00,  1 user,  load average: 1.06, 1.22, 1.34
Tasks: 151 total,   1 running, 150 sleeping,   0 stopped,   0 zombie
Cpu(s):  1.5%us,  3.6%sy,  0.0%ni, 73.0%id, 21.9%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   3873336k total,  3757576k used,   115760k free,     7596k buffers
Swap:  2610520k total,    17328k used,  2593192k free,  3362408k cached
17230 mysql     20   0 1853m 271m 2504 S   16  7.2   8:00.20 mysqld
17483 root      20   0 13732  11m  944 S    1  0.3   0:11.53 syslog-ng
18395 www-data  20   0 34588  10m 4300 S    1  0.3   0:02.58 php
18424 root      20   0 34588  10m 4316 S    1  0.3   0:02.57 php

Open in new window

Who is Participating?
stefanxConnect With a Mentor Commented:
Most of your RAM is probably used in buffers that the kernel determines. You see the amount with the free command.
Keep in mind that having RAM that is not used is a waste, so having a  large amount of RAM used by buffers is pretty normal ;)

With Top (in case you don't know), you can sort the applications by memory usage by pressing M

Not what you're looking for I'm sure, but maybe slightly helpful
mrjoltcolaConnect With a Mentor Commented:
On Linux often the balance of the RAM will be "absorbed" by cache, though it is technically free.

Look at the output of "free"

The memory in the -/+ buffers/cache line under "free" column is technically free.

cdukesAuthor Commented:
Understand that it's not a waste - but I have the VMware ESX team asking me why my server is taking up 4G of ram :-)

So by "technically free" you mean there's 3448584 free? (as noted in the output below)
# free
             total       used       free     shared    buffers     cached
Mem:       3873336    3739956     133380          0      16248    3298956
-/+ buffers/cache:     424752    3448584
Swap:      2610520      18544    2591976

Open in new window

A proven path to a career in data science

At Springboard, we know how to get you a job in data science. With Springboard’s Data Science Career Track, you’ll master data science  with a curriculum built by industry experts. You’ll work on real projects, and get 1-on-1 mentorship from a data scientist.

Correct. And you can run some experiments by starting up some process and watching the cache "free" shrink.
cdukesAuthor Commented:
Oddly...if I log into webmin, it shows mem usage at:
3.69 GB total, 488.22 MB used
This is weird...?
If I look at the vmware esx server it shows memory usage at 3.2g
Is there anything I can do to make the vmware team feel better?
>>Is there anything I can do to make the vmware team feel better?

I don't know. Educate them on Linux? Why are they worried, is there some sort of system performance problem?
cdukesAuthor Commented:
Yeah...good point. I've supplied them with my findings, thanks for your help!
Mybe your VMWare team should just assign you less memory?
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.