Subject: [vserver] RSS memory counter
From: Lukasz Czarnowski <relaks@o2.pl>
Date: Thu, 1 May 2008 16:01:30 +0200

Hi all!

	I have discovered small problem - IMHO RSS memory counter work incorrectly.
If postgresql is running on a vserver:

# vattribute --xid 40003 --set --flag virt_mem

# vserver test exec free
             total       used       free     shared    buffers     cached
Mem:      12338224    2698668    9639556          0          0          0
-/+ buffers/cache:    2698668    9639556
Swap:      2064376          0    2064376

# vattribute --xid 40003 --set --flag ~virt_mem

# vserver test exec free
             total       used       free     shared    buffers     cached
Mem:      12338224   10658056    1680168          0      19576   10243328
-/+ buffers/cache:     395152   11943072
Swap:      2064376        584    2063792

# cat /proc/virtual/40003/limit | egrep '(RSS|SHM)'
RSS:      635502               0/ 2323079             -1/      -1            0
SHM:      135016               0/  135016             -1/      -1            0

top:

27757 postgres  15   0  589m 495m 491m S    0  4.1   0:02.16 postmaster         
27762 postgres  15   0  586m 5404 4024 S    0  0.0   0:00.00 postmaster         
28258 postgres  18   0  586m  14m  13m S    0  0.1   1:11.82 postmaster         
28260 postgres  15   0 58008 1220  556 S    0  0.0   0:02.35 postmaster         
28262 postgres  15   0  586m 521m 520m S    0  4.3   0:49.67 postmaster         
28263 postgres  15   0 61076 1964  288 S    0  0.0  13:04.75 postmaster         
28264 postgres  15   0 60396 1320  396 S    0  0.0   8:07.99 postmaster         
28685 postgres  15   0  593m 493m 486m S    0  4.1   0:17.00 postmaster         
31444 postgres  15   0  588m 134m 131m S    0  1.1   0:01.35 postmaster         
31449 postgres  21   0  587m 441m 440m S    0  3.7   0:00.78 postmaster         
...

IMO memory pages mapped in multiple (postmaster) processes are counted
multiple times. Bug or feature? Any hints?

Linux version 2.6.22.19 (64bit) vs2.2.0.6
util-vserver: 0.30.215

Best regards,
-- 
Lukasz Czarnowski
mailto: relaks@o2.pl