0

i'm using AIX 6.1 on a database server,i'm having a problem where the non computational memory reaches 0 at some point, which causes the system to swap i guess and therefore the system becomes really slow , i read on some forums that this is due to file caching but it can be caused by something else,so how can i know for sure the reason behind this, and what can i exactly do to solve the problem, i usually restart the database but i'm guessing that's just a temporary solution and doesn't really solve the problem if there is one. Here's a capture of topas output after restarting the database , the non comp started increasing but few weeks, the same issue happend output

output


svmon here's the output of the svmon command

Sven
  • 98,649
  • 14
  • 180
  • 226
  • 1
    You may edit your original question with further details, as this isn't really an answer. Also, screenshot images of command line utilities are not very readable, text copy is preferred. – John Mahowald May 06 '17 at 16:04

1 Answers1

0

First, determine if there is a real problem. Ask what interactive response time or report schedule this system must deliver, and determine what the performance actually is.

Any significant paging out, or significant use % of the paging space, indicates utilized memory. Given how slow storage is compared to DRAM, that is a symptom of not meeting the best response time.

Determine the system's memory use. Many of the host Virtual Memory Manager statistics you want are printed when running vmstat -v For example, memory pages is the total number of 4 KB pages on the system. minperm is the minimum percentages of memory, reserved for file cache. Typically only a few %, but it won't be available for users. client pages are in use from user programs. free pages are, well, free, and you can basically count file pages as free.

Usually databases have significant amounts of shared memory. Observe how many shared memory segments and their size with ipcs -am As a sanity check, they should have non-zero number of attached processes, otherwise they are orphaned and not doing anything.

You didn't specify which database, not that it matters for the general methodology. I see Oracle processes in your topas output. Refer to the Oracle Performance Guide, in particular chapters regarding Configuring and Using Memory. Determine the size of the Oracle SGA.

If you determine that more memory is needed, it can be a relatively inexpensive upgrade. Particularly if using LPARs and there already is free memory in the frame to add to the partition.

John Mahowald
  • 32,050
  • 2
  • 19
  • 34
  • Thank you for your very detailed answer, i'm a bit new at this ;my system isn't paging that much, a very small amount (2%), on my topas everything seems to be working fine, i only used svmon command with no flags at that time , the output is posted as an aswer. Everytime this problem happens my server is very slow , and the noncomputational memory is close to zero ,if it's not zero. b value in vmstat shows a non zero value which means some processes are in an unterruptible state.i found that all i can do is reboot the server. Anoher thing is what can i do with the SGA size – jony jony May 06 '17 at 15:56
  • You are going to need to be methodical about checking things until you find patterns. CPU use, number of processes, memory, disk IO, network interface, OS level errors, application level performance. Start by collecting nmon data, running it through nmon analyzer, and look at what the graphs show you. – John Mahowald May 06 '17 at 16:09