OpenVZ Forum


Home » International » Russian » Проблема с использованием dcachesize
Re: Проблема с использованием dcachesize [message #16232 is a reply to message #16230] Wed, 29 August 2007 10:27 Go to previous messageGo to previous message
gsaxtc is currently offline  gsaxtc
Messages: 9
Registered: August 2007
Location: Kiev
Junior Member
Очень похоже,
что тормоза начинаются,
когда xfs_inode и dentry_cache доходит до 99-100


вот как тут

819569 559563 68% 0.06K 13891 59 55564K page_beancounter
158578 158543 99% 0.56K 22654 7 90616K xfs_inode
158496 158496 100% 0.62K 26416 6 105664K xfs_vnode
131344 131344 100% 0.23K 8209 16 32836K dentry_cache


Проблема в том,
что нигде не удается найти как влиять на этот параметр.

gsaxtc wrote on Wed, 29 August 2007 06:08

Загнал
0 0 в

ubc.dentry_watermark = 0 0

ubc.dentry_check = 10
fs.dentry-state = 69660 53089 45 0 0 0

Счетчики побежали,
вот только не совсем ясно,
хорошо это или плохо,
то есть получается кеш работал - но не считался,
а сейчас я наоборот подгрузил машину учетов кеша?


slabtop показывает такое

Active / Total Objects (% used) : 1106660 / 1528000 (72.4%)
Active / Total Slabs (% used) : 79217 / 79227 (100.0%)
Active / Total Caches (% used) : 104 / 161 (64.6%)
Active / Total Size (% used) : 246574.09K / 302587.93K (81.5%)
Minimum / Average / Maximum Object : 0.02K / 0.20K / 128.00K

OBJS ACTIVE USE OBJ SIZE SLABS OBJ/SLAB CACHE SIZE NAME
822991 568713 69% 0.06K 13949 59 55796K page_beancounter
125902 112993 89% 0.56K 17986 7 71944K xfs_inode
125856 112969 89% 0.62K 20976 6 83904K xfs_vnode
104992 93828 89% 0.23K 6562 16 26248K dentry_cache
103908 80286 77% 0.17K 4948 21 19792K vm_area_struct

Вся проблема в том, что машина имея 70% idle - жутко тормозит;(
и имеет высокий LA.

А куда смотреть не ясно, было подозрение - что проблема в диске,
вот и начал искать с dкеша.



top - 13:06:44 up 21:45, 10 users, load average: 13.83, 21.30, 58.76
Tasks: 526 total, 5 running, 516 sleeping, 0 stopped, 0 zombie
Cpu0 : 22.0%us, 7.4%sy, 0.0%ni, 70.3%id, 0.0%wa, 0.0%hi, 0.3%si, 0.0%st
Cpu1 : 21.7%us, 7.4%sy, 0.0%ni, 70.3%id, 0.0%wa, 0.0%hi, 0.6%si, 0.0%st



maratrus wrote on Wed, 29 August 2007 05:53

Гипотеза:
Дело, скорее всего, в том, что пока у вас действительно не идет учет dentry_cache. В пользу этого говорят нули в колонках held и maxheld.
dentry_cache просто пока занимает довольно малый объем памяти.
Для уменьшения накладных расходов, связанных accounting'ом dentry_cache используется следующий принцип. Существуют два пороговых значения. Как только объем памяти, используемой dentry_cache превысит какую-то определенную величину, счетчик включится и будет находится во включенном состоянии, пока размер dentry_cache не станет меньше второй величины.

Размер, занимаемый dentry_cache можно поcмотреть утилитой slabtop.

Значения пороговых значений управляются параметром ядра ubc.dentry_watermark. Утилита sysctl поможет просмотреть значения параметров ядра.
Например, если sysctl -a | grep ubc.dentry_watermark выведет
ubc.dentry_watermark = 0 100
это означает, что счетчик dentry_cache включится, если данный кэш будет занимать 10% памяти и выключится только если кэш опуститься до 0.



 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: VE в качестве OSTEMPLATE
Next Topic: Проблемы с source routing, multihomed, vlan etc.
Goto Forum:
  


Current Time: Fri Oct 04 16:28:09 GMT 2024

Total time taken to generate the page: 0.04102 seconds