This may help.
The AIX Virtual Memeory anager (VMM) kernel tunables minperm% and maxperm% govern the allocation of pages of physical memory to either computational (process) memory or file (cache) pages.
The AIX O/S uses physical to cache files thereby reducing (in most cases) I/O.
The amount of physical memory being used for file caching can be determined at any point by executing the command
vmstat -v
and viewing the numperm% value.
When memory becomes constrained, with the number of free pages dropping below the minfree value, the VMM scans the page frames and reclaims stale pages.
The rate of page scanning can be examined using the vmstst command (see column with heading sr - scan rate - number of pages scaned per second).
When not enough stale pages can be found, the VMM must begin to page active pages out.
The determination of which pages to page out is regulated by the minperm% and maxperm% settings.
When the value of numperm% (which is dynamic) is greater than maxperm% (Static Setting) the VMM steals only file pages by paging the information in memory back to disk.
The paging of thesefile pages does not cause the suspension of process execution that often results from paging/swapping to page space.
It has the potential of increasing the I/O a bit as file pages must be paged back in if/when needed.
When the value of numperm% drops below minperm%, the VMM steals one page of computational (process) memory for every page of file memory written out. The stealing of computational pages is swapping.
As for the correct initial seetings, there are as many rules of thumb as there are thumbs.
The approach that I have often taken is to set the minperm/maxperm/maxclient settings of 15/50/50 respectively for database servers.
This allows for more of the database files to be cached in physical memory.
The reduction of minperm% from the default of 20% to 15% postpones the onset of swapping.
That said this is an iteractive tuning effort. You will need to watch the system behaviour for swapping and/or excessive I/O. Additionally you should monitor the value of numperm% during your periods of peak utilisation.
I would suggest that after monitoring numperm% for a period that you consider decreasing maxperm% to 10% less than your numperm% value.
Doing so may further reduce the onset of paging.
A final note any excess physical memory can be used for file caching. You may therefore see the value of numperm% to be very high during periods of light applcation load.
The value of maxclient% must be less than or equal to maxperm%. I generally set it to be equal.
As I stated above there is no magic wand or hard set rules to system tuning,it may also be worth getting an evaluation copy of sarcheck as this can help you understand and fix the bottlenecks on your system if your not happy with the trail and error approach.
Mike
"Whenever I dwell for any length of time on my own shortcomings, they gradually begin to seem mild, harmless, rather engaging little things, not at all like the staring defects in other people's characters."