3.3.1 svmon

The svmon command provides information about the virtual memory usage by the kernel and user processes in the system at any given time. For example, to see system-wide information about the segments (256MB chunk of virtual memory), type the following command as root:

svmon -S

The command prints out segment information sorted according to values in the Inuse field, which shows the number of virtual pages in the segment that are mapped into the process address space. Segments of type work with a blank description field belong to user processes. If the LPage is set to Y, the segment contains large pages. These segments always have 65536 in the Inuse, Pin, and Virtual fields because this is the number of 4KB pages in the 256MB segment. In other words, large pages are mapped into the process address space with a granularity of 256MB even if a process is using a small fraction of it. A segment can have either large pages or small pages, but not both.

Vsid

Esid

Type

Description

LPage

Inuse

Pin

Pgsp

Virtual

101810

-

work

 

Y

65536

65536

0

65536

161836

-

work

 

Y

65536

65536

0

65536

1e09de

-

work kernel heap

-

30392

92

0

30392

9e0

-

work kernel heap

-

26628

20173

0

26628

190899

-

work mbuf pool

-

15793

15793

0

15793

20002

-

work page table area

-

7858

168 7690

7858

0

-

work kernel segment

-

6394

3327

953

6394

70b07

-

work other kernel segments

Y

4096

4096

0

4096

c0b0c

-

work other kernel segments

Y

4096

4096

0

4096

1b00bb

-

work vmm software hat

-

4096

4096

0

4096

a09aa

-

work loader segment

-

3074

0

0

3074

Memory overhead associated with HPS communication buffers allocated in support of MPI processes and IP is shown in the map as other kernel segments. Unlike user segments with large pages, these segments have just one large page or 4096 4KB pages. The segment named mbuf pool indicates a system-wide pool of pinned memory allocated for mbufs mostly used in support of IP. The Pin field shows the number of pinned 4KB pages in a segment (for example, pages that cannot be paged out). Large pages are always pinned.

To see a segment allocation map organized by process, type the following command as root:

svmon -P

The output is sorted according to the aggregate Inuse value for each process. This is useful in finding virtual memory demands for all processes on the node. The virtual segment ID (Vsid) is a unique segment ID that is listed in more than one process when processes share data (for example, if multiple MPI tasks use shared memory or program text).

Pid

Command

Inuse

Pin

Pgsp

Virtual

64-bit

 

Mthrd LPage

 

381118

sppm

448221

3687

2675

449797

Y

Y

N

 

pshpstuningguidewp040105.doc

 

 

 

 

 

 

Page 11

Page 11
Image 11
IBM pSeries manual Svmon, Vsid Esid Type Description LPage Inuse Pin Pgsp Virtual