geom_cache

Any discussions about UNIX OS (include Linux)

Moderator: sva

geom_cache

Postby Eugene Grosbein on Wed Jul 14, 2010 11:01 am

Привет!

Домашний десткоп, FreeBSD 8.1-PRERELEASE, два винта 500G (маркетинговых), в начале каждого создан слайс на 250G (настоящих), поверх них gmirror.
Поверх зеркала geom_cache, внутри geom_journal, уже дальше партишны, включая /dev/ufs/home размером в 203G, заполненный на 159G.

Запускаем dump -0 -a -C 32 -f /dev/null /home и периодически жмем Ctrl-T, чтобы увидеть процент готовности и прогноз времени окончания, который быстро
падает. После 5.5% прогресса скорость падения прогноза выравнивается с реальным временем и составляет (ещё) 34 минуты.

Hе прерывая дампа, на ходу отключаем кеширование gcache путем syctl kern.geom.cache.enable=0. Hажимая Ctrl-T, видим что скорость работы
dump резко упала - прогноз начинает расти и к 12.5% (минут через 5) достигает уже 1 часа 17 минут и растет дальше. Включаем geom_cache обратно и тут же
прогнозируемое время начинает падать, к прогрессу 34% (ещё минут через пять, точно не мерял) прогноз времени возвращается до 35 минут.

А всё потому, что geom_cache исполняет свою главную функцию: обеспечивает чтение низлежащего провайдера блоками не менее чем задано. У меня задано
128K при размере кеша gcache в 16 мегабайт. systat -vm 3 показывает, что при включенном gcache чтение с обоих дисков (зеркало читает с обоих)
идет, действительно, блоками по 128K "на транзакцию", а при отключении сразу переключается на 64K (у зеркала дефолтный балансировщик load).

К сожалению, в gcache до сих пор есть мелкая бага (описка), которая не даёт сконфигурить ему размер кеша 64k или больше. Мелкий патч для
исправления этого тут (эксплуатируется с марта на двух машинах без проблем):

http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/144732
Eugene Grosbein
 

Re: geom_cache

Postby Alexander Motin on Wed Jul 14, 2010 11:02 am

Hа сколько я понимаю, `gcache label -v -b 32768 -s 65536` обозначает 32768*65536 - 2GB памяти. Тебе точно этого не хватает?

PS: Hаписал пока автору.
Alexander Motin
 


Return to UNIX

Who is online

Users browsing this forum: No registered users and 9 guests

cron