AIX lrud process on Oracle db server


DB - Oracle 11g/10g

OS - AIX 6.1/5.3

When running oracle on AIX, one issue that can occur is high CPU with os process lrud using large % of the available CPU and large Kernel cpu usage as well. This will cause the instance to hang with errors such as 'ORA-00020: maximum number of processes exceeded'. Topas output on this situation can be similar to bellow,


lrud is the page stealing process used by AIX virtual memory manager. So this shows a situation where OS VMM is heavily active. Below lists some checkpoints from both Oracle and OS end for this issue.

From Oracle -->

When oracle is not using Direct I/O which means OS level caching is not used the OS VMM will be freed from all the overhead due to oracle I/O activity. So using Direct I/O with large SGA can be a solution.

The parameter 'filesystemio_options' defines the method oracle uses for I/O. By setting SETALL for this parameter we can enable Direct I/O from db end.

From AIX -->
Some related parameter from aix are below, starting values need to decided based on server config and the work load.

Oracle doc -- http://docs.oracle.com/cd/B19306_01/server.102/b15658/appa_aix.htm#UNXAR314

VMM parameter settings

maxclient%
maxperm%
minperm%
lru_file_repage 
IO parameters

j2_maxPageReadAhead
j2_minPageReadAhead
j2_nBufferPerPagerDevice
numfsbufs
pv_min_pbuf

AIO parameters

minservers
maxservers
maxreqs


Comments

Popular posts from this blog

ORA-16433: The database or pluggable database must be opened in read/write

Wait for unread message on broadcast channel - Blocking Sessions

ORA-14126 - While splitting max value partition