Process report
The process report displays the memory usage statistics for all or the specified process names. To print the process report, specify the -P flag.
This report contains all the columns detailed in the common summary metrics as well as its own defined here:
- Pid
- Indicates the process ID.
- Command
- Indicates the command the process is running.
If processes use pages of size other than the base 4KB page size, and the -O pgsz=on option is set, these statistics are followed by breakdown statistics for each page size. The metrics reported in this per-page size summary are reported in the page size unit by default.
After process information is displayed, svmon displays information about all the segments that the process used. Information about segments are described in the paragraph Segment Report.
- If you specify the -@ flag, the svmon command displays two additional lines that show the virtual pid and the WPAR name of the process. If the virtual pid is not valid, a dash sign (-) is displayed.
- The -O affinity flag supported by the -P option, gives details on domain affinity for the process when set to on and for each of the segments when set to detail. Note that the Memory affinity information is not available for the shared partitions.
Examples:
- To display the top 10 list of processes in terms of real memory
usage in KB unit, enter:
# svmon -P -O unit=KB,summary=basic,sortentity=inuse -t 10
Unit: KB ------------------------------------------------------------------------------- Pid Command Inuse Pin Pgsp Virtual 344254 java 119792 22104 0 102336 209034 xmwlm 68612 21968 0 68256 262298 IBM.CSMAgentR 60852 22032 0 60172 270482 rmcd 60844 21996 0 60172 336038 IBM.ServiceRM 59588 22032 0 59344 225432 IBM.DRMd 59408 22040 0 59284 204900 sendmail 59240 21968 0 58532 266378 rpc.statd 59000 21980 0 58936 168062 snmpdv3ne 58700 21968 0 58508 131200 errdemon 58496 21968 0 58108
This example gives the top 10 processes consuming the most real memory. The report is sorted by the inuse count, 119792 KB for the java process, 68612 KB for the xmwlm daemon and so on. The other metrics are: KB pinned in memory, KB of paging space and virtual memory.
- To display information about all the non empty segments of a process,
enter:
# svmon -P 221326 -O commandline=on,segment=on,filterprop=notempty
Command line : svmon -P 221326 -O commandline=on,segment=on,filterprop=notempty Unit: page ------------------------------------------------------------------------------- Pid Command Inuse Pin Pgsp Virtual 221326 java 20619 6326 9612 27584 Vsid Esid Type Description PSize Inuse Pin Pgsp Virtual 502d d work text or shared-lib code seg m 585 0 1 585 0 0 work kernel segment m 443 393 4 444 14345 3 work working storage sm 2877 0 7865 9064 15364 e work shared memory segment sm 1082 0 1473 1641 1b36a f work working storage sm 105 0 106 238 17386 - work s 100 34 64 146 1a38b 2 work process private sm 7 4 24 31
The detailed section displays information about each non empty segment used by process 221326. This includes the virtual, Vsid, and effective, Esid, segment identifiers. The type of the segment is also displayed along with its description that consists of a textual description of the segment, including the volume name and i-node of the file for persistent segments.
The report also details the size of the pages the segment is backed by (Psize column), where s denotes 4 KB pages and L denotes 16 MB pages, and sm a multi size page (small and medium page in this case) the number of pages in memory (
Inuse column
), the number of pinned pages (Pin column
), the number of pages used in the paging space (Pgsp column
), and the number of virtual pages (Virtual column
). - To display information about all the non empty segments used by
a process, including the corresponding shared memory ids and affinity
domain data, enter:
# svmon -P 221326 -O commandline=on,segment=on,affinity=on,shmid=on,filterprop=notempty
Command line : svmon -P 221326 -O commandline=on,segment=on,affinity=on,shmid=on,filterprop=notempty Unit: page ------------------------------------------------------------------------------- Pid Command Inuse Pin Pgsp Virtual 221326 java 20619 6326 9612 27584 Domain affinity Npages 0 29345 1 11356 Vsid Esid Type Description PSize Inuse Pin Pgsp Virtual 502d d work text or shared-lib code seg m 585 0 1 585 Domain affinity Nbpages 0 4800 1 4560 0 0 work kernel segment m 443 393 4 444 Domain affinity Nbpages 0 5744 1 1344 14345 3 work working storage sm 2877 0 7865 9064 Domain affinity Nbpages 0 1518 1 1359 15364 e work shared memory segment sm 1082 0 1473 1641 shmid:3 Domain affinity Nbpages 1b36a f work working storage sm 105 0 106 238 Domain affinity Nbpages 0 48 1 57 17386 - work s 100 34 64 146 Domain affinity Nbpages 0 5744 1 1344 1a38b 2 work process private sm 7 4 24 31 Domain affinity Nbpages 0 3 1 4
The detailed section displays the list of all segments used by the process 221326. In this case, the -O affinity=detail option adds for each
Vsid
, the Domain affinity breakdown. TheVsid
15364 also shows the shared memory id (shmid: 3
in this case). This information can be matched with the results given by the ipcs command. - To display memory statistics in the legacy format which includes
a breakdown by segments, enter:
$ svmon -P 209034 -O segment=on
Unit: page ------------------------------------------------------------------------------- Pid Command Inuse Pin Pgsp Virtual 209034 xmwlm 15978 5492 0 15929 Vsid Esid Type Description PSize Inuse Pin Pgsp Virtual 502d d work shared library text m 495 0 0 495 2002 0 work kernel segment m 396 343 0 396 19288 c work shared memory segment sm 1477 0 0 1477 b27a f work shared library data sm 106 0 0 106 d27c 2 work process private sm 90 4 0 90 1b24a - clnt /dev/hd4:15493 s 22 0 - - 1f24e 1 clnt code,/dev/hd2:2521 s 18 0 - - 8079 3 clnt file mapped read write, s 8 0 - - /dev/hd3:5 a27b - clnt /dev/hd2:123146 s 1 0 - -
- To only display non empty segments and add per page size breakdown
for segments with multiple page sizes, enter:
$ svmon -P 209034 -O segment=on,filterprop=notempty,mpss=on
Pid Command Inuse Pin Pgsp Virtual 209034 xmwlm 15977 5492 0 15929 Vsid Esid Type Description PSize Inuse Pin Pgsp Virtual 502d d work shared library text m 495 0 0 495 2002 0 work kernel segment m 396 343 0 396 19288 c work shared memory segment s 5 0 0 1477 m 92 0 0 0 b27a f work shared library data s 106 0 0 106 m 0 0 0 0 d27c 2 work process private s 74 4 0 90 m 1 0 0 0 1b24a - clnt /dev/hd4:15493 s 21 0 - - 1f24e 1 clnt code,/dev/hd2:2521 s 18 0 - - 8079 3 clnt file mapped read write, s 8 0 - - /dev/hd3:5 a27b - clnt /dev/hd2:123146 s 1 0 - -
The 2 previous examples show the difference of the values reported in the Inuse, Pin, Pgsp and Virtual columns with MPSS pages. On this system sm pages are used by the process 209034, the metrics reported in the first report are in 4KB pages (in the smaller page size) while when the break down by page size is displayed with the -O mpss=on option, s pages are in 4KB page and m pages are in 64KB pages. So, for the segment 19288 this gives 1477*4=5908KB in the first example, and 5*4*1024 + 92*64*1024 =5908KB in the second example. Dashes are put on the
Pgsp
andVirtual
memory columns for the client segments because it is meaningless for this type of segment. - To display detailed information about mapping segments for a process,
in KB unit, enter:
$ svmon -P 340216 274676 -O segment=on,unit=KB,mapping=on
Unit: KB ------------------------------------------------------------------------------- Pid Command Inuse Pin Pgsp Virtual 274676 ptxtstmmap 57276 21968 0 57256 Vsid Esid Type Description PSize Inuse Pin Pgsp Virtual 502d d work shared library text m 31744 0 0 31744 2002 0 work kernel segment m 25344 21952 0 25344 10661 2 work process private sm 76 16 0 76 1a36b f work shared library data sm 52 0 0 52 14665 1 clnt code,/dev/hd2:825 s 12 0 - - 11660 * - work mmap paging sm 8 0 0 8 source=b2ba d65c * - work mmap paging sm 8 0 0 8 source=b2ba 13662 * - work mmap paging sm 8 0 0 8 source=b2ba 4655 * - work mmap paging sm 8 0 0 8 source=b2ba b2ba - clnt /dev/hd3:13 s 8 0 - - 1350 * - work mmap paging sm 8 0 0 8 source=b2ba 18329 3 mmap maps 5 source(s) sm 0 0 - - source(s)=b2ba/13662, b2ba/d65c, b2ba/4655, b2ba/11660 source(s)=b2ba/1350 ------------------------------------------------------------------------------- Pid Command Inuse Pin Pgsp Virtual 340216 ptxtstmmap 57240 21968 0 57216 Vsid Esid Type Description PSize Inuse Pin Pgsp Virtual 502d d work shared library text m 31744 0 0 31744 2002 0 work kernel segment m 25344 21952 0 25344 f65e 2 work process private sm 76 16 0 76 19668 f work shared library data sm 52 0 0 52 1d66c - clnt /dev/hd3:14 s 12 0 - - 14665 1 clnt code,/dev/hd2:825 s 12 0 - - 1c66d 3 mmap maps 3 source(s) sm 0 0 - - source(s)=1d66c, 1d66c, 1d66c
The mapping option is used in this case to also show mmaped segments which are not in the address space of the process. The process 274676 has created a shared memory file (client segment b2ba), this segment is used by mmap segments (11660, d65c, 13662, 4655, 1350) which are not in the address space of the process. The mmap segment of the process gives the list of all mmaped segment and their associated source (b2ba/13662, ...).
The process 340216 has created a private memory file, no extra mmap segments are displayed since all segments which are using this resource are private to the process and are already so shown by default.