Страница 1 из 1

Альтернатива "options HZ=1000"

Добавлено: 2007-09-06 0:46:30
Daywalker
Здравствуйте

Можно ли применять строчку в

Код: Выделить всё

/boot/loader.conf
kern.hz="1000"
вместо того, чтобы собирать ядро с

Код: Выделить всё

options HZ=1000
?

Re: Альтернатива "options HZ=1000"

Добавлено: 2007-09-06 8:03:37
Alex Keda

Код: Выделить всё

sysctl -a | grep hz
kern.clockrate: { hz = 1000, tick = 1000, profhz = 666, stathz = 133 }
неуверен... Скорей всего непрокатит.
но - попробовать можно.

Re: Альтернатива "options HZ=1000"

Добавлено: 2007-09-06 16:12:42
weec
а, что мешает всетаки пересобрать ядро?
если жалко время - отключите сборку модулей

Re: Альтернатива "options HZ=1000"

Добавлено: 2007-09-06 16:15:50
Alex Keda
ну, если очень надо - можно и подождать пару часов

Re: Альтернатива "options HZ=1000"

Добавлено: 2007-09-08 8:42:27
Daywalker
weec писал(а):а, что мешает всетаки пересобрать ядро?
если жалко время - отключите сборку модулей
Ничто не мешает.
Просто интересно. Плюс изменить значение kern.hz и перезагрузиться, быстрее, чем пересобирать ядро.

Re: Альтернатива "options HZ=1000"

Добавлено: 2007-09-08 8:44:15
Alex Keda
дык - попробуй.
за это время уже сколько раз можно было попробовать? :)))

Re: Альтернатива "options HZ=1000"

Добавлено: 2007-09-08 13:02:24
Daywalker
lissyara писал(а):дык - попробуй.
за это время уже сколько раз можно было попробовать? :)))
Да я если честно и не совсем понимаю зачем эта функция нужна? :(
Просто прочитал, что увеличивает быстродействие, чаще происходит опрос, но для моих нужд: раздача инета для 2-3-х ПК плюс игровой quake3 сервер, я думаю эта функция не сильно поможет. (Я же нигде не админю, кроме как у себя дома :D , так изучаю для души)

ИМХО, это надо для нагруженных серверов. Прав я или нет?

Re: Альтернатива "options HZ=1000"

Добавлено: 2007-09-08 16:54:19
dikens3
http://www.lissyara.su/?id=1156
+ комменты
Дык, понятно, что выигрыш получился копеечный в случае с тем K6. Кроме polling.enable есть еще интересные переменные. Например,
polling.user_frac - процент времени, оставляемый приложениям. В вашем случае было 90. Поставили бы 80 - разница сразу стала бы ощутимее.

polling.idle_poll - выполнять поллинг вместо idle-процесса. Дает нагрузку на CPU - 100%, но можно оставить user_frac=90 без последствий для производительности: если процессору есть что делать помимо поллинга - idle-процеесс будет вызываться реже, и, соотвественно, частоста поллинга упадет до приемлемых величин. Если же процессор справляется с потоком данных - будет черпать их на максимальной скорости.

И не забывает добавить в ядро опцию HZ=1000 или HZ=2000 (на мощных процессорах) - частота срабатывания планировщика и, как следствие, поллинга.

P.S. На SMP поллинг работает.
P.P.S. На двух PIV-3 после настройки протокола TCP (увеличение буферов) с поллингом достугнута скорость 105 мегабайт в секунду (сетевухи - em, мерилка - /usr/ports/benchmarks/iperf )