hint: timecounters

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

hint: timecounters

Mike Belopuhov
re,

хинт для тех кто хочет использовать опен под большими нагрузками
на каком-то непроверенном железе: поглядите вывод команды
``sysctl kern.timecounter'' и если кроме i8254 и dummy ничего нет,
то возможно(!) стоит подумать о другом железе.

причина простая: кернел (да и userland через gettimeofday) очень
часто обращается за временем, которое во многих случаях (nano[up]?time,
micro[up]?time) лезет в железо. и если единственное железо это i8254,
висящее на ISA, то сами понимаете....

вот пример как может быть иначе:

micro:~% sysctl kern.timecounter
kern.timecounter.tick=1
kern.timecounter.timestepwarnings=0
kern.timecounter.hardware=ICHPM
kern.timecounter.choice=i8254(0) ICHPM(1000) dummy(-1000000)
micro:~%

в -current улучшен ACPI (который, к слову, стоит потестировать) и
соответственно на всех(?) машинах с ACPI имеется acpitimer(4).
возможно, включив ACPI, будет ускорение в отдельных кусках кода.
(egrep -wR "(nano[up]?time|micro[up]?time)" /sys/ даст знать в каких)

--
you're never too old to rock'n'roll if you're too young to die.


Reply | Threaded
Open this post in threaded view
|

Re: hint: timecounters

mitrofanzzz
Хм... а если sysctl kern.timecounter вообще ничего не выводит???

On Tue, 11 Dec 2007 03:51:20 +0300, Mike Belopuhov <[hidden email]>  
wrote:

> re,
>
> хинт для тех кто хочет использовать опен под большими нагрузками
> на каком-то непроверенном железе: поглядите вывод команды
> ``sysctl kern.timecounter'' и если кроме i8254 и dummy ничего нет,
> то возможно(!) стоит подумать о другом железе.
>
> причина простая: кернел (да и userland через gettimeofday) очень
> часто обращается за временем, которое во многих случаях (nano[up]?time,
> micro[up]?time) лезет в железо. и если единственное железо это i8254,
> висящее на ISA, то сами понимаете....
>
> вот пример как может быть иначе:
>
> micro:~% sysctl kern.timecounter
> kern.timecounter.tick=1
> kern.timecounter.timestepwarnings=0
> kern.timecounter.hardware=ICHPM
> kern.timecounter.choice=i8254(0) ICHPM(1000) dummy(-1000000)
> micro:~%
>
> в -current улучшен ACPI (который, к слову, стоит потестировать) и
> соответственно на всех(?) машинах с ACPI имеется acpitimer(4).
> возможно, включив ACPI, будет ускорение в отдельных кусках кода.
> (egrep -wR "(nano[up]?time|micro[up]?time)" /sys/ даст знать в каких)
>



--
Никита Александрович.


Reply | Threaded
Open this post in threaded view
|

Re: hint: timecounters

Mike Belopuhov
Mitrofanzzz wrote:
> Хм... а если sysctl kern.timecounter вообще ничего не выводит???
>

значит это старая система :-)
выводит начиная с 4.2.

> On Tue, 11 Dec 2007 03:51:20 +0300, Mike Belopuhov <[hidden email]>
> wrote:
>
>> re,
>>
>> хинт для тех кто хочет использовать опен под большими нагрузками
>> на каком-то непроверенном железе: поглядите вывод команды
>> ``sysctl kern.timecounter'' и если кроме i8254 и dummy ничего нет,
>> то возможно(!) стоит подумать о другом железе.
>>
>> причина простая: кернел (да и userland через gettimeofday) очень
>> часто обращается за временем, которое во многих случаях (nano[up]?time,
>> micro[up]?time) лезет в железо. и если единственное железо это i8254,
>> висящее на ISA, то сами понимаете....
>>
>> вот пример как может быть иначе:
>>
>> micro:~% sysctl kern.timecounter
>> kern.timecounter.tick=1
>> kern.timecounter.timestepwarnings=0
>> kern.timecounter.hardware=ICHPM
>> kern.timecounter.choice=i8254(0) ICHPM(1000) dummy(-1000000)
>> micro:~%
>>
>> в -current улучшен ACPI (который, к слову, стоит потестировать) и
>> соответственно на всех(?) машинах с ACPI имеется acpitimer(4).
>> возможно, включив ACPI, будет ускорение в отдельных кусках кода.
>> (egrep -wR "(nano[up]?time|micro[up]?time)" /sys/ даст знать в каких)
>>
>
>
>

--
you're never too old to rock'n'roll if you're too young to die.


Reply | Threaded
Open this post in threaded view
|

Re: hint: timecounters

Mike Belopuhov
Mike Belopuhov wrote:
> Mitrofanzzz wrote:
>> Хм... а если sysctl kern.timecounter вообще ничего не выводит???
>>
>
> значит это старая система :-)
> выводит начиная с 4.2.
>

но можно поглядеть в dmesg на предмет наличия ichpcib, acpitimer,
acpihpet, geodesc, gscpm, glxpcib, elansc, viaenv, amdpm или amdpcib.
(это для x86)

>> On Tue, 11 Dec 2007 03:51:20 +0300, Mike Belopuhov <[hidden email]>
>> wrote:
>>
>>> re,
>>>
>>> хинт для тех кто хочет использовать опен под большими нагрузками
>>> на каком-то непроверенном железе: поглядите вывод команды
>>> ``sysctl kern.timecounter'' и если кроме i8254 и dummy ничего нет,
>>> то возможно(!) стоит подумать о другом железе.
>>>
>>> причина простая: кернел (да и userland через gettimeofday) очень
>>> часто обращается за временем, которое во многих случаях (nano[up]?time,
>>> micro[up]?time) лезет в железо. и если единственное железо это i8254,
>>> висящее на ISA, то сами понимаете....
>>>
>>> вот пример как может быть иначе:
>>>
>>> micro:~% sysctl kern.timecounter
>>> kern.timecounter.tick=1
>>> kern.timecounter.timestepwarnings=0
>>> kern.timecounter.hardware=ICHPM
>>> kern.timecounter.choice=i8254(0) ICHPM(1000) dummy(-1000000)
>>> micro:~%
>>>
>>> в -current улучшен ACPI (который, к слову, стоит потестировать) и
>>> соответственно на всех(?) машинах с ACPI имеется acpitimer(4).
>>> возможно, включив ACPI, будет ускорение в отдельных кусках кода.
>>> (egrep -wR "(nano[up]?time|micro[up]?time)" /sys/ даст знать в каких)
>>>
>>
>>
>>
>

--
you're never too old to rock'n'roll if you're too young to die.