Very Large "zero" slab expected?

Sonny Rao sonny at burdell.org
Wed Feb 2 10:02:39 EST 2005


On Tue, Feb 01, 2005 at 02:52:07PM -0500, Sonny Rao wrote:
> Hi, I'm running a fairly heavy database workload using DB/2 on a 4-way
> 720 ontop of ext3 trying to replicate a separate VM performance issue.
> 
> During and after the run, I see a massive about of slab memory being
> used by the "zero" cache, which appears to a be a ppc64 specific
> cache for pmd's and pgd's.  
> 
> Basically, about 1GB out of my total of 8GB on the system is being
> consumed by this.  Is this expected ?  It seems excessive
> considering my mapped memory is only about 2GB during the run.
> 
> The DB/2 buffer pool was set to 4GB and none of it used hugh pages.
> 
> Here's the relavent snippet from slabinfo:
> slabinfo - version: 2.0
> # name            <active_objs> <num_objs> <objsize> <objperslab> <pagesperslab> : tunables <batchcount> <limit> <sharedfactor> : slabdata <active_slabs> <num_slabs> <sharedavail>
> zero              256424 256431   4096    1    1 : tunables   24   12 8 : slabdata 256424 256431      0
> 
> Any ideas as to why there are so many of these ?

More info :

Here's /proc/meminfo output from a similar run, with 4GB of RAM
instead of 8GB:  

portrait:~ # cat /proc/meminfo 
MemTotal:      4099072 kB
MemFree:         15008 kB
Buffers:         38580 kB
Cached:        2941320 kB
SwapCached:     118492 kB
Active:        2672776 kB
Inactive:       645284 kB
HighTotal:           0 kB
HighFree:            0 kB
LowTotal:      4099072 kB
LowFree:         15008 kB
SwapTotal:     1050616 kB
SwapFree:       341156 kB
Dirty:             372 kB
Writeback:           4 kB
Mapped:        1827844 kB
Slab:           715384 kB
Committed_AS:  5342648 kB
PageTables:     610864 kB
VmallocTotal: 2147483647 kB
VmallocUsed:     25340 kB
VmallocChunk: 2147458223 kB
HugePages_Total:     0
HugePages_Free:      0
Hugepagesize:    16384 kB

And the top few lines of slabtop:

 Active / Total Objects (% used)    : 728019 / 747302 (97.4%)
 Active / Total Slabs (% used)      : 177511 / 177591 (100.0%)
 Active / Total Caches (% used)     : 79 / 120 (65.8%)
 Active / Total Size (% used)       : 705236.61K / 709101.23K (99.5%)
 Minimum / Average / Maximum Object : 0.02K / 0.95K / 128.00K

  OBJS ACTIVE  USE OBJ SIZE  SLABS OBJ/SLAB CACHE SIZE NAME                   
336360 335400  99%    0.09K   8409       40     33636K buffer_head
157860 156817  99%    0.12K   5262       30     21048K size-128
154036 153988  99%    4.00K 154036        1    616144K zero
 22572  22120  97%    0.16K   1026       22      4104K vm_area_struct
 18571  18074  97%    0.52K   2653        7     10612K radix_tree_node


So, you can see at this point we have around 600MB of these "zero"
pages being used.  

There are about 150 db2 processes running using lots of shared memory: 

portrait:~ # ipcs 

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch
status      
0x763ee574 2392064    db2inst1  767        39987136   161                     
0x763ee561 2424833    db2inst1  701        39370752   159                     
0x00000000 2457602    db2fenc1  701        164052992  161                     
0x6803bbdb 2490371    db2inst1  761        50331648   1                       
0x00000000 2785285    db2inst1  701        1073741824 145                     
0x00000000 2818054    db2inst1  701        1073741824 145                     
0x00000000 2850823    db2inst1  701        1073741824 145                     
0x00000000 2883592    db2inst1  701        117735424  145    


Thanks,

Sonny



More information about the Linuxppc64-dev mailing list