Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Загрузк а CPU "em0 taskq"
On Wed, Oct 21, 2009 at 12:18:11PM +0400, Кирилл wrote:
> После отключения net.isr.direct=0, картина следущая:
> PID USERNAME THR PRI NICE SIZE RES STATE TIME WCPU COMMAND
> 11 root 1 171 ki31 0K 8K RUN 496:20 19.68% idle:
> cpu0
> 12 root 1 -44 - 0K 8K WAIT 0:40 19.09% swi1:
> net
> 22 root 1 -68 - 0K 8K - 225:30 8.98% em0
> taskq
> 34 root 1 -68 - 0K 8K WAIT 81:59 8.69% irq18:
> em0 atapci1
> 17308 www 1 96 0 118M 106M RUN 1:02 1.27% nginx
Нужно подождать хотя бы минуту-две, чтобы с em0 ушло старое время.
Если это устоявшееся состояние, то нужно попробовать разнести em0 и
atapci на разные прерывания, возможно, уменьшится время
8.98% em0 taskq
8.69% irq18: em0 atapci
> 21 октября 2009 г. 12:14 пользователь Кирилл <kirillrst@xxxxxxxxx> написал:
>
> > # vmstat -i
> > interrupt total rate
> > irq4: sio0 3 0
> > irq17: fxp0 1 0
> > irq18: em0 atapci1 380860601 5127
> > cpu0: timer 148559877 1999
> > Total 529420482 7126
> >
> > 2009/10/21 Igor Sysoev <is@xxxxxxxxxxxxx>
> >
> > On Wed, Oct 21, 2009 at 10:56:12AM +0400, Кирилл wrote:
> >>
> >> > Добрый день, коллеги. Буду благодарен, если кто подскажет что это за
> >> процесс
> >> > (*em0 taskq*) и почему так много поедает процессора. Ну не верю я что
> >> > хваленая реализация сетевого стека во FreeBSD так проседает при 100Мбит.
> >> > Машина: Celeron 2.8, 1Gb ОЗУ, 7.2-i386-20091008-RELENG_7_2. Выступает в
> >> роле
> >> > web-акселератора, и кроме nginx ничего не крутится.
> >> >
> >> > /etc/rc.d/ipfilter onestop - Ни малейших перемен.
> >> >
> >> > # top -SP
> >> > CPU: 13.5% user, 0.0% nice, 46.8% system, 6.4% interrupt, 33.3% idle
> >> > Mem: 205M Active, 266M Inact, 152M Wired, 1068K Cache, 111M Buf, 368M
> >> Free
> >> > Swap: 4096M Total, 56M Used, 4040M Free, 1% Inuse
> >> >
> >> > PID USERNAME THR PRI NICE SIZE RES STATE TIME WCPU
> >> COMMAND
> >> > 11 root 1 171 ki31 0K 8K RUN 476:04 30.76%
> >> idle:
> >> > cpu0
> >> > 22 root 1 -68 - 0K 8K - 204:36 *29.20%
> >> em0
> >> > taskq*
> >> > 34 root 1 -68 - 0K 8K WAIT 73:52 8.40%
> >> irq18:
> >> > em0 atapci1
> >> > 15763 www 1 96 0 203M 191M RUN 3:35 1.17%
> >> nginx
> >> > ...
> >>
> >> > # netstat -dw1
> >> > input (Total) output
> >> > packets errs bytes packets errs bytes colls drops
> >> > 8448 0 4671078 9177 0 6720956 0 0
> >> > 25776 0 17436726 28118 0 17904026 0 0
> >> > 32230 0 26810636 32266 0 21383868 0 0
> >> > 23703 0 19727356 23627 0 13323592 0 0
> >>
> >> Как уже правильно сказал Михаил, дело в числе пакетов, а не в мегабитах.
> >> Чтобы посмотреть, сколько уходит на TCP/IP, нужно выключить
> >> net.isr.direct=0, предварительно увеличив
> >> net.inet.ip.intr_queue_maxlen=2048.
> >> Тогда в top'е появится процесс "swi1: net", который и занимается
> >> обработкой
> >> TCP/IP. Удивляет большой процент у "irq18: em0 atapci1", что показывает
> >> "vmstat -i" ? Имеет смысл попробовать в BIOS'е рассадить em и atapci
> >> на разные прерывания (хотя это не всегда возможно).
> >>
> >>
> >> --
> >> Игорь Сысоев
> >> http://sysoev.ru
> >>
> >>
> >
> >
> > --
> > kirillrst.com
> >
> >
>
>
> --
> kirillrst.com
--
Игорь Сысоев
http://sysoev.ru
|