2015-04-09 7 views
1

Я испытываю стресс-тестирование своего прокси-сервера UDP на машине с 8 логическими процессорами. Около 14 тысяч клиентов UDP один из процессоров (CPU 4) начинает пикировать, а пропускная способность UDP (как показано диспетчером задач) падает до нуля. Я использовал WPR для записи использования процессора во время всплеска, а WPA показывает, что CPU 4 обрабатывает в два раза больше фрагментов DPC/ISR (~ 11K), как и все другие процессоры (~ 5K каждый). Самый длинный фрагмент DPC выполнялся в течение 232 миллисекунд, следующие 5 фрагментов DPC выполнялись в течение более 100 миллисекунд, а следующие 57 выполнялись между 1 и 90 миллисекундами.WPA показывает NIC-драйвер DPC-фрагмента, работающий на 232 миллисекунда

Фрагмент определяется как «период времени, в течение которого DPC или ISR выполнялись бесперебойно». (см. https://msdn.microsoft.com/en-us/library/windows/hardware/jj679884.aspx)

Корпорация Майкрософт рекомендует, чтобы фрагменты DPC работали не более 100 микросекунд! (см. https://msdn.microsoft.com/en-us/library/windows/hardware/ff546551(v=vs.85).aspx)

bxvbda.sys является модулем (Broadcom NetXtreme II GigE VBD) и um_bdrv_dpc является функцией для всех этих длинномерных фрагментов DPC.

Итак, мой вопрос: правильно ли я интерпретирую данные WPA для ЦОД?

All CPUs DPC/ISR

+1

Я думаю, что вы правильно интерпретируете данные. Если бы вы поделились трассировкой, экспертам было бы проще сказать наверняка. Использование CPU (выборка) должно показывать, что делает драйвер во время этих длинных DPC. В конечном счете вам нужно поговорить с Broadcom. Дайте им трассировку и скажите им, чтобы они исправили своего водителя. –

ответ

2

Я анализировал ETL следы на некоторое время и да, вы, кажется, глядя на это правильно. Вы не указываете версию сервера, который используете, но для UDP-трафика на некоторых версиях Windows Server требуется исправление. Это может стоить исследовать.

Нижеприведенное сообщение является довольно устрашающим сообщением при анализе проблем DPC, возможно, также стоит взглянуть на него. По сути, вы проходите через след и ищите более 100 мс. Теперь в Windows 8 это многое изменилось, хотя, так, что ОС (опять же) :)

http://blogs.technet.com/b/craigf/archive/2014/02/03/a-backup-server-flooded-by-dpcs.aspx

В Windows 8 вы можете видеть, что мы изменили DPCs рассчитываются, ссылки ниже, а также.

Ключевые моменты:?.

«Почему DPC Latency так плохо в Windows 8 я использовал программу DPC Latency Checker для измерения Windows 7 показывает о 90u, сидя на рабочем столе, но ОС Windows 8 CP никогда не показывает ничего ниже чем 1000u ".

«В Windows 8 он сообщает о задержке DPC 1000us (1 мс) на самом низком уровне. Он никогда не достигает значения ниже 1000us, он регулярно поднимается в диапазоне 2-3 мс (2000-3000), и часто всплески в диапазоне 20-30 мс во время обработки ».

http://answers.microsoft.com/en-us/windows/forum/windows_8-networking/why-is-dpc-latency-so-bad-in-windows-8/05ef48a6-7775-4526-9e5b-32c5951b8dbf