dadv: (Default)
Choose your future ([personal profile] dadv) wrote2010-12-31 01:49 am
Entry tags:

Гигабит

Драйвера интелевских гигабитных сетевух по дефолту ограничивают макcимальное количество прерываний в секунду от карты пределом в 8000. Внезапно, этого оказалось очень мало для Core i3 и гигабитных скоростей современного интернет-трафика, где пакеты гораздо мельче 1500 байт в среднем. И даже 16000 в секунду мало. На 700M in + 300M out получилось порядка 22000 прерываний в секунду, если поставить максимум в 32000 для интегрированной 82578DM.

[identity profile] dmn42.livejournal.com 2010-12-30 08:58 pm (UTC)(link)
Нде? Странно. У меня на линуксах с E8600 получалось примерно по 30к прерываний на ядро. Если выставить rc-usecs около 500 - суммарно выходило как раз 8к.

[identity profile] dadv.livejournal.com 2010-12-31 04:32 am (UTC)(link)
Узким местом тут у меня была сетевая, а не процессор, который не более чем на 70% был загружен. А вот сетевая больше прерываний не генерировала. Впрочем, может на этот уровень трафика больше и не надо было...

[identity profile] romik-g.livejournal.com 2011-01-17 01:54 pm (UTC)(link)
а не надо на каждый входящий/исходящий пакет прерывание генерировать. http://www.29west.com/docs/THPM/latency-interrupt-coalescing.html http://datatag.web.cern.ch/datatag/howto/tcp.html

[identity profile] romik-g.livejournal.com 2011-01-17 01:54 pm (UTC)(link)
т.е. это Linux, но во фре наверняка подобное есть.

[identity profile] dadv.livejournal.com 2011-01-17 08:00 pm (UTC)(link)
А с чего вы взяли, что у меня на каждый пакеты было по прерыванию? Я в куре (http://dadv.livejournal.com/72947.html) и первоисточники (http://download.intel.com/design/network/applnots/ap450.pdf) изучал.

[identity profile] dadv.livejournal.com 2011-01-17 08:02 pm (UTC)(link)
Разумеется, и включено по умолчанию, и настраивается под профиль трафика, и у меня было настроено в тесте.