[FUG-BR] Valor aconselhavel para variável HZ

Luiz Otavio O Souza lists.br em gmail.com
Quinta Novembro 6 15:33:47 BRST 2014


On 6 November 2014 12:13, Fabricio Lima wrote:
> + ab (apache bench)
>
> Lembrando q para maquinas virtuais, reduzem este parametro.

Correto.

>
> Veja isso tb:
>
> However, in FreeBSD 9, the "dynamic tick mode" (aka "tickless mode") is the
> default, controlled by the kern.eventtimer.periodic setting which defaults
> to 0 (read: tickless mode).
>
> This year FreeBSD 10-HEAD got a new reincarnation of the kernel event
> timers backend callout(9)
> <https://www.freebsd.org/cgi/man.cgi?query=callout&sektion=9>, no more
> limited by or even related to Hz rate.

FreeBSD head é o 11 :)

E essa alteração não tem relação direta com o valor do HZ.

callout(9) é só uma implementação de timers utilizada no kernel, que
antes se baseava no valor do HZ para os cálculos (internos) de
timeout. Ex.: execute a seguinte rotina/função após 0.5 segundos.
Nesse caso o tempo era convertido em ticks levando em conta o valor de
HZ do sistema. Isso era simples mas limitava o menor tempo 'util' para
1 tick (se HZ = 100, 1 tick = 1 seg / 100, se HZ=1000, 1 tick = 1 seg
/ 1000, ...).

O novo sistema de callout é mais preciso, permite o uso de frações de
tempo muito pequenas e por isso o valor de HZ do sistema não serve
mais para descrever esses pequenos valores.

O tickless ajuda na ecomonia. Ative o periodic e veja a diferença com
o systat -vm 1. No tickless o sistema só acorda quando existe alguma
coisa para ser feita (mesmo com alto valor de HZ) e com o periodic o
interrupt handler do timer vai rodar na freqüência determinada por HZ
(em geral um desperdício - esse knob so existe para contornar bugs em
determinados chipsets).

Att.,
Luiz


Mais detalhes sobre a lista de discussão freebsd