|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Igor Sysoev 2:5020/400 01 Mar 2005 00:35:29 To : Anton Barabanov Subject : Re: Загрузка CPU -------------------------------------------------------------------------------- Anton Barabanov <Anton.Barabanov@f5480.n5020.z2.fidonet.org> wrote: > 28 Фев 05 года, в 22:58, Igor Sysoev (2:5020/400) -> Anton Barabanov: > >> Что это вообще такое? Чем от прерываний отличается? Hе ждём запрос на > >> прерывание от карты, а сами опрашиваем периодически? И за счёт чего > >> выигрыш? > > IS> Если у тебя в секунду приходит 10,000 пакетов, то на них приходит примерно > IS> столько же прерываний. При обработке прерывания есть свои накладные > IS> расходы. Если же пакеты обрабатывать по таймеру 1,000 раз в секунду > IS> (polling), то за каждое прерывание обработается примерно 10 пакетов - > IS> накладных расходов меньше. > > IS> Кроме того, polling следит за тем, что система оставляла заданный процент > IS> времени для пользовательских процессов. Это позволяет избежать live > IS> lock'а, > IS> когда система тратит 100% времени на обработку прерываний. Для 2xP3-650 > IS> и fxp live lock наступает примерно на 35,000-40,000 прерываниях в секунду. > Тогда из каких соображений по умолчанию выключено? Причин несколько. 1) не все драйвера карт (а возможно, и карты) поддерживают polling. 2) polling не работает в SMP. Вернее, работает, но статистика будет кривая. 3) далеко не на всех машинах сетевые прерывания исчисляются тысячами. -- Игорь Сысоев http://sysoev.ru --- ifmail v.2.15dev5.3 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/6577670bb899.html, оценка из 5, голосов 10
|