AIXThis forum is for the discussion of IBM AIX.
eserver and other IBM related questions are also on topic.
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.
I am a newbie to AIX and I am currently facing a problem where the AIX server fills the entire memory and paging space every few days. On a daily basis, this seems to be fine but after running for a month or so then automatically, there is a sudden burst of usage which fills up both the real and paging space memory and we have to reboot the system in order to bring back the server.
The server contains applications running on Glassfish and a oracle Database running on the server.
>lsattr -El sys0 | grep realmem
realmem 25165824 Amount of usable physical memory in Kbytes False
>lsps -s
Total Paging Space Percent Used
32000MB 2%
>vmstat -v
6291456 memory pages
6080672 lruable pages
42674 free pages
1 memory pools
709454 pinned pages
80.0 maxpin percentage
3.0 minperm percentage
80.0 maxperm percentage
71.4 numperm percentage
4346914 file pages
0.0 compressed percentage
0 compressed pages
71.4 numclient percentage
80.0 maxclient percentage
4346914 client pages
0 remote pageouts scheduled
0 pending disk I/Os blocked with no pbuf
840514 paging space I/Os blocked with no psbuf
2228 filesystem I/Os blocked with no fsbuf
0 client filesystem I/Os blocked with no fsbuf
577 external pager filesystem I/Os blocked with no fsbuf
30.2 percentage of memory used for computational pages
>vmstat 1 10
System configuration: lcpu=4 mem=24576MB ent=0.50
Host much memory is allocated for Glassfish to use and how many java VM instances are set to run from it?
Also, what is the memory consumption for Oracle?
It sounds like these applications are consuming all 24 gigs of your RAM and then it eats your paging space. Do you run nmon on the machine? that can produce a detailed report of memory and CPU usage over time.
Can you post the top part of the prtconf command, just until the Volume Group info? Probably best to remove the serial number from the output.
Oracle is a pig if left unchecked. Check, or have your DBA check, the memory parameters for your Oracle instance(s). Basically, it will eat up as much memory as you have available unless you set a cap on it. Check the SGA settings - max, size, etc... Left to it's own devices, it will eat a server out of house and home, especially if you have redo logs, and various housekeeping tasks that run intermittently. It can chew through RAM and then into paging space. We have a large SAP ERP instance and have Oracle set to 60% or 70% of available memory on a 72GB LPAR with 20GB of paging space (other stuff is running on there as well as the operating system that need memory). Java can be as bad, but I stay away from it whenever possible so I'm of no help there.
Does the memory usage increase gradually, or stay flat and then suddently go haywire? This ight help you understand whether it is a gradual memory leak or just one job that misbehaves.
I'd recommend that you capture the output of the commands you have already mentioned above on a regular basis. You might also want to add "svmon -G" and "svmon -u" to that list. The latter will show you how much memory each user is using, and help you pinpoint the culprit.
Good amount of tips from previous posters; also, Oracle app and db servers tend to incorporate significant weekly/monthly/quarterly batch job processing; check with the dba's to see if the memory leak/utilization issue corresponds with a batch or other db job that runs; that will give a good clue, in my experience, to what's running up your memory utilization at "given intervals".
Quick fix: add paging space big time. (triple it?) (*DYNAMIC AND IMMEDIATE, NO REBOOT NEEDED). That should at least give you breathing room to root cause whatever's hog-tieing up physical memory. Follow through with the above suggestions on system kernel tuning for max processes per user, semaphore settings, etc for Oracle...Oracle is a spoiled brat when it comes to kernel tuning needs.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.