Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How can I see the free memory on an AIX? There is no free -m under it.

AIX oslevel: 6100-03-03-0943

share|improve this question
Your AIX server won't have any free memory. It will have memory in use by applications and memory in use for filesystem cache. If you look at tools like topas, nmon, etc. they will all show nearly all of physical memory in use all the time. My question is, what are you trying to find out. – EightBitTony Dec 16 '11 at 14:35
up vote 6 down vote accepted


# svmon
               size      inuse       free        pin    virtual
memory       131072     114552      16520      34191     151562
pg space     655360      78472

               work       pers       clnt      other
pin           30911          6          0       3274
in use        83264      31288          0

or vmstat as already shown (vmstat -v)

share|improve this answer
I always use svmon -G -O unit=MB as that's the only way to get the additional column available which shows the amount of memory, that applications can request. Nice sideeffect is that it will show the amounts in MB, I still cannot get around with 512k blocks :) – doktor5000 Apr 18 '15 at 11:43

Use this:

lsattr -El mem0
vmstat -v
share|improve this answer

Create a script something like checkmemory.sh and place the following code:

#memory calculator
um=`svmon -G | head -2|tail -1| awk {'print $3'}`
um=`expr $um / 256`
tm=`lsattr -El sys0 -a realmem | awk {'print $2'}`
tm=`expr $tm / 1000`
fm=`expr $tm - $um`
echo "\n\n-----------------------";
echo "System : (`hostname`)";
echo "-----------------------\n\n";

echo "\n\n-----------------------";
echo " Users Login information \n";

for ENTRY in `finger | cut -d " " -f1 | grep -v Login | uniq`
echo "`finger -l $ENTRY | head -1 | cut -d \" \" -f14` ---> `finger -l $ENTRY |
awk '{ print $2 }' | tail -2 | head -1`";
#finger -l $ENTRY | awk '{ print $2 }' | tail -2 | head -1;
echo "-----------------------\n";

echo "\n----------------------";
echo "Memory Information\n\n";
echo "total memory = $tm MB"
echo "free memory = $fm MB"
echo "used memory = $um MB"
echo "\n\n-----------------------\n";

It will display the total, free and used memory of the system as well as remote logged in users.

share|improve this answer

this command will display result in "GB"

svmon -G -O unit=GB

if you want in "MB", just change the unit value to MB

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.