Obsazeni pameti inode/dentry cache - kolik je vlastne volno?

Michal Kara lemming na atrey.karlin.mff.cuni.cz
Pátek Leden 4 13:35:15 CET 2002


  Ahoj!

  Mam pocitac, na nemz zabira inode cache 450MB a dentry cache dalsich 100MB:

comp:~# cat /proc/slabinfo
...
inode_cache       948544 948544    480 118568 118568    1 :  124   62
dentry_cache      979050 979050    128 32635 32635    1 :  252  126
..

(format je <jmeno> <pouzitych jednotek> <zaalokovanych jednotek> <velikost jednotky> ... )

  Souboru tam moc otevreno neni:

comp:~# cat /proc/sys/fs/file-nr
3755    1419    16384

(tedy 2336)

  Problem je ovsem v tom, ze se dentry a inode cache zjevne pocita do obsazene
pameti:

comp:~# free
             total       used       free     shared    buffers     cached
Mem:        901224     897136       4088          0       2664      78548
-/+ buffers/cache:     815924      85300
Swap:       132072      17248     114824

  tedy, clovek nemuze jednoduse zjistit, jestli mu pamet dochazi, nebo ne :-(

  Verze kernelu je 2.4.12.

  Muze nekdo objasnit, proc tomu tak je, jak se tomuto da odpomoci (treba dat
limit), pripadne zda se da pouzit nejaky vzorecek z ktereho se da odvodit jak
moc je to s pameti na takovem stroji spatne (zase uplne odecist se ty cache
nemohou, tak jednoduche to nebude...).

							Diky predem,
								Michal Kara



-- 
PING 111.111.111.111 (111.111.111.111): 56 data bytes
...
---- Waiting for outstanding packets ----
No outstanding packets received, just two ordinary.



Další informace o konferenci Linux