Хорошо, я практически уверен что во время прерывания от сетевухи, процессор, например Intel i7 на sandy bridge, находится практически в состоянии покоя, аргументированно доказать я это не могу, протестировать тоже, поэтому и не стал вдаваться в полемику по этому поводу, но раз Вы так зацепились за этот момент...
Да в чем ошибка-то? Вы уверены что процессор во время обработки прерывания от сетевухи РАБОТАЕТ? На 100% уверены? Я нет, не берусь утверждать здесь что-то с полной уверенностью, т.к. не занимался низкоуровневым программированием, Вы, я думаю, тоже. Например про DMA режим Вы слышали?
Обязательно сделаю и выложу результаты. Про ram-диск на первом сервере сообразил когда уже написал пост, спасибо, полезное замечание.
Личное наблюдение. Которое я, в отличии от Вас, готов доказать, причем Вы сможете это самостоятельно перепроверить.
Тестовая площадка --два десктопа с материнками стоимостью 1800р, со встроенными сетевушками Realtek, специально взял что попроще, cpu разве что core i7 2600. Назначаем ip адреса из одной подсети. На второй (принимающей) машине создаем ram диск и монтируем его например в /mnt/tmpfs
На первой делаем
dd if=/dev/zero of=testfile count=1 bs=1000M
rsync -v testfile root@ip_второго:/mnt/tmpfs
(копирование повторяем несколько раз, что бы исключить влияние IO диска)
Смотрим чем-то вроде ifstat и видим скорость копирования, у меня получилось около 500Мбит/с, что в общем нормально для таких сетевух. А теперь смотрим как меняется нагрузка по прерываниям на cpu, у меня она изменилась на 1-1,5%.
Несложный тест может повторить любой желающий, можно даже на одной машине, если хватит терпения и знаний настроить таблицу маршрутизации что бы трафик не шел через loopback, а уходил на сетевуху с одного ip на другой.
Заметьте, идиотом я никого не называл, я всего лишь отстаиваю свою точку зрения. Я умею признать если я не прав, поверьте.
Тест, который Вы привели, вообще не понятно о чем -- люди берут разные материнки с разными сетевухами на борту, копируют что-то под виндой и приходят к выводу что производительность у них разная, ну о чем тут говорить можно, что тестили-то?
То что конкретно в Вашем случае нагрузка по прерываниям на сервере из которого вы сделали маршрутизатор показывает 10-12% лично мне ничего не говорит. Кроме того что там 200Мбит/с и два интела информации никакой нет. От чего там прерывания? Может у Вас там NAT с парой сотен компьютеров с одной стороны, работающий фаирволл с сотней правил и черт знает что еще. И вообще от сетевух нагрузка-то?
У более дорогих сетевух есть ряд преимуществ перед простыми, зачем Вы передергиваете? Мы сейчас обсуждаем утверждение о том что более дорогая сетевуха снимает часть прерываний с cpu, что коренным образом сказывается на производительности cpu.
А Ваша позиция для меня понятна -- самоутвердиться за счет собеседника, унизив его, несомненно самый эффективный и простой способ доказать свою правоту. Отвечать Вам тем же не стану, возможно, Вы человек хороший :)
Любая современная десктопная мать с двумя самыми кривыми и дешевыми реалтеками, работая в режиме например моста, что исключает какое бы то ни было влияние других факторов на систему -- дискового контроллера, файловой системы ОС, приложений и т.п., на скорости в 2Гбит/с не нагрузит CPU по прерываниям более 1%
Прерывания идут много от чего: и от дискового контроллера, и от видеокарты, и, о боже, даже от системного таймера, утверждение что дешевый сетевой контроллер грузит CPU больше более дорогого, не имеет с реальностью ничего общего, да и сама эта нагрузка столь незначительна, что брать ее в расчет вообще нет смысла, тем более еще и утверждать что от этого еще и выделение тепла процессором как-то меняется!
Давайте вернемся назад, было утверждение того что чем больше запросов на прерывания от сетевой карты, тем больше выделение тепла от процессора, Вы с этим согласны? Для чего сетевушка прерывает работу процессора, блесните знаниями.
Статью Вы прочитали, а осмыслить прочитанное не успели. Раз уж Вы посылаете меня почитать про irq-storm и polling, Вам наверняка знакомо слово "прерывание"? Давайте вместе подумаем что же оно означает. Происходит оно от слова "прервать", согласны? Задумаемся, что же у нас прерывается, батюшки, да ведь работа центрального процессора? И вот беда, выделять больше тепла простаивающий процессор ну никак не может.
В top'е есть даже отдельный параметр, показывающий простой системы из-за системных прерываний, в Вашей замечательной статье тестировалось все под windows и смотрелось что происходит по графику в task manager'е, который показывает простой от системных прерываний как нагрузку на cpu.
Что такое "специализированный чип сетевой карты"? В серверной материнке он чем-то отличается от такого же чипа в несерверной? Как работа с сетью может что-то нагреть? Сетевая карта, встроенная в материнку, работает на физическом и канальном уровнях, сетевой уровень обеспечивается драйверами, какая бы там мать из себя серверная не была. Это примерно как сказать что нагрев хаба зависит от кол-ва прошедших через него пакетов, или витая пара греется сильнее если трафа по ней проходит больше :)
Сетевой карте абсолютно без разницы сколько пакетов в секунду или какой объем трафика через нее прошел, хоть вообще ничего, хоть 1Гбит/c, ни на нагрузку на cpu, ни на нагрев чего бы то ни было это не окажет абсолютно никакого влияния, хоть в серверной материнке, хоть в десктопной.
Немного не так, греются они абсолютно одинаково, в юнитовом корпусе всего лишь изменен принцип охлаждения процессора, вентилятор стоит не сверху радиатора, а сбоку. Сделано это просто от безысходности -- вентилятор уже не влезает по высоте в корпус.
Про маркетинг очень верное замечание, о чем я писал в этой теме несколько постов, поддерживаю.
С того что только что было в Вашей подписи, которую Вы зачем-то убрали :)
А как считать будем? Для десктопа берем схожий по производительности cpu i7 серии, саташные диски, а для сервера Xeon, рейд контроллер, SAS, память с ECC, ну чтоб прям "сервер"? Или Вам сравнить одно и тоже железо просто в разных корпусах, rack-mount и tower исполнении? Тогда действительно разница 20-30% получится, только отличаться эти железки друг от друга ничем не будут
Вы решили выяснить истину не путем изучения фактов и цен, а сравнения компетентности участников обсуждения. Хорошо, можно и так. Если я правильно понимаю, Вы занимаетесь тем что перепродаете чужие серверЫ (именно так правильно пишется по-русски, обратите внимание раз уж занимаетесь), а я занимаюсь сборкой, закупкой и последующей продажей или сдачей в аренду того, что потом перепродаете Вы, причем и десктопного, и рэкового самосбора, и брендового оборудования. К тому же, являюсь совладельцем небольшого коммерческого дц в СПб :)
Не сочтите пост за грубость, обидеть Вас совсем не хочу, хотел просто поучаствовать в обсуждении..