Перейти до

дрова Yandex


jack

Рекомендованные сообщения

Собственно ресурс лежит, может кому не лень будет скинуть сюда jackjg@i.ua последние дрова от Yandex для FreeBSD 8.1 чип 82576

Заранее благодарен!

Ссылка на сообщение
Поделиться на других сайтах
  • Відповіді 116
  • Створено
  • Остання відповідь

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Уважаемый, а какую связь вы вообще углядели между _южными_ мостами и поддержкой нужных фич для pci-e?? Хватит смущать народ домыслами..

идея дров от яндекса была в том, чтобы распределить загрузку по ядрам, на картах 1000PT было несколько очередей, но их нельзя было повесить на разные прерывания/процессоры, драйвера от яндекса прогр

Не понял. http://www.tomshardware.com/reviews/southbridge-battle,1394-2.html http://www.tomshardware.com/reviews/intel-p45-chipset,1961-3.html   Я за пишу за матери в целом, а судя по реплике, вы

Posted Images

А что должно поменять?

 

rom91# uname -a

FreeBSD rom91.pavlabor.net 8.2-RC3 FreeBSD 8.2-RC3 #2: Tue Feb 15 15:52:40 EET 2011 pvb@rom91.pavlabor.net:/usr/src/sys/amd64/compile/ROUTER amd64

rom91# sysctl -a|grep dev.em.0

dev.em.0.%desc: Intel® PRO/1000 Network Connection 7.0.5.Yandex[$Revision: 1.36.2.17.2.18 $]

dev.em.0.%driver: em

dev.em.0.%location: slot=0 function=0

dev.em.0.%pnpinfo: vendor=0x8086 device=0x10b9 subvendor=0x8086 subdevice=0x1083 class=0x020000

 

правда

 

em0@pci0:1:0:0: class=0x020000 card=0x10838086 chip=0x10b98086 rev=0x06 hdr=0x00

vendor = 'Intel Corporation'

device = '82572EI PRO/1000 PT Desktop Adapter (Copper)'

 

но драйвер без проблем должен подхватить и твою карточку

Ссылка на сообщение
Поделиться на других сайтах

чому не актуальні?

 

идея дров от яндекса была в том, чтобы распределить загрузку по ядрам,

на картах 1000PT было несколько очередей, но их нельзя было повесить на разные прерывания/процессоры, драйвера от яндекса програмно позволяли это сделать

 

1000ET более продвинутая карта, имеет и очереди и возможность каждую очередь повесить на отдельное прерывание, используется родной igb драйвер

Ссылка на сообщение
Поделиться на других сайтах

Ну одной лиш карточкой там не обойдется, и дрова не спасут если массу вещей не поддерживапет мать и проц.

 

Хотя хотелось бы взглянуть на результаты разгона,

например какой прирост получается при тех же частотах и количестве ядер проца при использовании карточки РТ и ЕТ.

Ссылка на сообщение
Поделиться на других сайтах

Ну одной лиш карточкой там не обойдется, и дрова не спасут если массу вещей не поддерживапет мать и проц.

 

Хотя хотелось бы взглянуть на результаты разгона,

например какой прирост получается при тех же частотах и количестве ядер проца при использовании карточки РТ и ЕТ.

зачем вы пытаетесь приплести мать и проц?

Драйвера Яндекса разрабатывались для многоядерных систем, так как родной драйвер em не умеет работать в несколько потоков. Драйвера от Яндекса решают эту проблему, позволяя распараллелить обработку трафика на несколько ядер.

 

Драйвера для сетевых карт igb умеют распределять аппаратные очереди в чипах на несколько потоков обработки. Основное отличие от варианта яндекс+em в том, что igb распределяет пакеты между потоками на основании заголовков IP, т.е. в случае с PPPoE вся нагрузка все равно ляжет только на один поток обработки.

 

По субьективным ощущениям от пользования em и igb картами: igb кушает чуть больше процессора. Но объективно не измерял.

Ссылка на сообщение
Поделиться на других сайтах

Драйвера для сетевых карт igb умеют распределять аппаратные очереди в чипах на несколько потоков обработки. Основное отличие от варианта яндекс+em в том, что igb распределяет пакеты между потоками на основании заголовков IP, т.е. в случае с PPPoE вся нагрузка все равно ляжет только на один поток обработки.

Предвидится ли появление драйвера для оптимизации работы PPPoE+igb? На сколько я понимаю нужно чтоб драйвер распределял пакеты не на основании заголовка IP, а так, как это делает яндексовый драйвер?

Ссылка на сообщение
Поделиться на других сайтах

Ну одной лиш карточкой там не обойдется, и дрова не спасут если массу вещей не поддерживапет мать и проц.

 

Хотя хотелось бы взглянуть на результаты разгона,

например какой прирост получается при тех же частотах и количестве ядер проца при использовании карточки РТ и ЕТ.

зачем вы пытаетесь приплести мать и проц?

Драйвера Яндекса разрабатывались для многоядерных систем, так как родной драйвер em не умеет работать в несколько потоков. Драйвера от Яндекса решают эту проблему, позволяя распараллелить обработку трафика на несколько ядер.

 

Драйвера для сетевых карт igb умеют распределять аппаратные очереди в чипах на несколько потоков обработки. Основное отличие от варианта яндекс+em в том, что igb распределяет пакеты между потоками на основании заголовков IP, т.е. в случае с PPPoE вся нагрузка все равно ляжет только на один поток обработки.

 

По субьективным ощущениям от пользования em и igb картами: igb кушает чуть больше процессора. Но объективно не измерял.

 

То есть разницы никакой, чуть больше кушает проца.

Тогда нафига козе баян?

 

А может всетаки стоит взглянуть на мать, на проц, шоб ощутить прирост от карточки нового поколения ЕТ? :)

 

Я почему и спросил что чел хочет получить, следующий вопрос был бы а сколько у него ядер, какая мать, вернее серерный мост, если старенькая то и южный мост при делах,

в конце концов, если не РТ, а полез на ЕТ, то какой проц?

Ссылка на сообщение
Поделиться на других сайтах

Предвидится ли появление драйвера для оптимизации работы PPPoE+igb? На сколько я понимаю нужно чтоб драйвер распределял пакеты не на основании заголовка IP, а так, как это делает яндексовый драйвер?

Напишите сами :) код открыт.

Насколько я помню это распределение делает сам чип. Но можно софтварно распределить обработку по аналогии с драйверами em или по аналогии реализации в линуксе.

Ссылка на сообщение
Поделиться на других сайтах

То есть разницы никакой, чуть больше кушает проца.

Тогда нафига козе баян?

Теоретически igb должна работать лучше на высоких нагрузках. Практически я тестов не делал, о чем собственно и написал.

 

 

А может всетаки стоит взглянуть на мать, на проц, шоб ощутить прирост от карточки нового поколения ЕТ? :)

Еще раз вопрос: что даст изменение матери и проца для устройства на шине pcie?

Кроме как прямое влияние на скорость обработки пакетов системой.

А PT карта или ET стоит не имеет никакого значения.

Ссылка на сообщение
Поделиться на других сайтах

Предвидится ли появление драйвера для оптимизации работы PPPoE+igb? На сколько я понимаю нужно чтоб драйвер распределял пакеты не на основании заголовка IP, а так, как это делает яндексовый драйвер?

Напишите сами :) код открыт.

Насколько я помню это распределение делает сам чип. Но можно софтварно распределить обработку по аналогии с драйверами em или по аналогии реализации в линуксе.

Ну скорее всего не мне одному пригодился бы такой драйвер? А в линуксе он как работает? Уже не по заголовку IP? И сложно ли вообще написать такое? Или возможно переделать em?

Ссылка на сообщение
Поделиться на других сайтах

Ну скорее всего не мне одному пригодился бы такой драйвер? А в линуксе он как работает? Уже не по заголовку IP? И сложно ли вообще написать такое? Или возможно переделать em?

Пообщайтесь с wawa at yandex-team.ru, думаю он подскажет что можно сделать в этом направлении.

Ссылка на сообщение
Поделиться на других сайтах

Еще раз вопрос: что даст изменение матери и проца для устройства на шине pcie?

Кроме как прямое влияние на скорость обработки пакетов системой.

А PT карта или ET стоит не имеет никакого значения.

 

Наверно уже заметили что многие пробуют ставить, скажем яндекс драйверы,

но комуто они помогают а комуто нет.

Гдето на форуме встречал, чел перебрал два десятка компов,

пока не определился что РТ и яндекс дрова работают на определенном северном мосте.

 

На самом деле, то карточка РТ поддерживает технологию MSI,

но хоть это ии круто, без поддержуи на мостах эта фича работать не будет.

Когда сотни админов тыкают драйвер на какое не попадя железо,

то и получается кто то попал, а ктото не попал.

А даташит почитать, религия не позволяет.

 

Поетому если говорить о интеле, то например у того же пакета дров от яндекса e1000-7.0.5-RELENG8-yandex-1.36.2.17.2.18,

присутствуют модули.

-rw-r--r-- 1 ps ps 159528 6 сен 11:57 if_em.c

-rw-r--r-- 1 ps ps 17331 6 сен 11:57 if_em.h

-rw-r--r-- 1 ps ps 155449 6 сен 11:53 if_igb.c

-rw-r--r-- 1 ps ps 16199 6 сен 11:53 if_igb.h

-rw-r--r-- 1 ps ps 134311 6 сен 11:53 if_lem.c

-rw-r--r-- 1 ps ps 16347 5 апр 2010 if_lem.h

то есть,

один драйвер поддерживает три групы карточек, lem, em, igb.

если грубо, то

lem - старые сетевые карточуки

em - карточки группы РТ (поддержка MSI)

igb - карточки группы ЕТ (поддержка MSI-X и не только)

каждая группа реализована на определенном класе микросхем и предназначена для решения своих задач.

Еще эту раскладку можно расмисать так

lem - 100мб

em - 1000мб

igb - 10000мб

 

igb - это отдельная песня, ровно как и серия карт ЕТ.

Кроме MSI-X там напаковано, Intel I/OAT DMA Engine, NAPI и т.д.

То есть реализовано MSI-X, DMA, DCA, RSS и т.д. на аппаратном уровне.

Опять же если грубо, то это технология позволяющая сетевой карте работать на прямую с процом,

совершенно на другом уровне.

MSI-X комплекмная технология, позволяет организовать стандартных 8 каналов PCI-E x1, для создания интерфейса для сетевой карты 10гиг. Естественоо прерываний поддерживает минимум 64 на девайс.

Но по старой архитектуре, даже i7 на 6 ядрах больше гига не вытягивает, вот и возникла необходимость в кардинальной смене правил игры.

Реализовав MSI, появилась возможноть разложить каналы по прерываниям,

реализовав DMA, сетевая карта не просто подымала флаг прерывания, а заганяет пакет в памят и через DCA семафорит процу что "кушать подано", процу остается только решить что с пакетом делать.

 

Естественно разгрузив проц, можно и постаратся раскачатся на 10гиг...

 

Но опять же вопрос, какая стоит цель?

Чо то мне не верится что нужно раскачать десятигиговую карточку.

 

А если это гиг, то там РТ с головой хватает, переход на гиговую ЕТ, может принести только економию електроенергии и скажем возможность раскачать роутер в две головы на i3, на скорости гиг фул дуплексом.

 

Но опять же не все так просто, как по мне то дешевле постаить 6 ядерный АМД, и карточку РТ, а на лишних пару киловат, закрыть глаза.

 

Не обдуманое втыкание железа, может привести к падению производительности.

Поетому хотелось бы услышать увидеть, кто реально получил прирост на карточках ЕТ.

 

ps.

использование ЕТ на гиге, можно сравнить с установкой 10 мегабитной карточки в PCI слот.

Работать будет, только в чем прикол?

Ссылка на сообщение
Поделиться на других сайтах

Ну скорее всего не мне одному пригодился бы такой драйвер? А в линуксе он как работает? Уже не по заголовку IP? И сложно ли вообще написать такое? Или возможно переделать em?

Пообщайтесь с wawa at yandex-team.ru, думаю он подскажет что можно сделать в этом направлении.

 

Дабы не навтикали писюнов, общатся на таком уровне не стоит.

Сетевая карточка никогда не работала на уровне IP,

она работает на уровне эзернета.

Ее задача обеспечить транспорт, а то чем вы дальше разбираете поток,

абсолютно не относится к уровню драйвера сетевой карты,

то есть дальнейшая судьба потока за пределами компетенции драйвера.

Ссылка на сообщение
Поделиться на других сайтах

На самом деле, то карточка РТ поддерживает технологию MSI,

но хоть это ии круто, без поддержуи на мостах эта фича работать не будет.

на самом деле поддержка msi есть фактически на всех чипах.

 

lem - 100мб

em - 1000мб

igb - 10000мб

причем тут igb к 10гигам, а lem к 100мбитам?

Кстати у меня есть сетевая карта, которая в зависимости от версии драйвера обрабатывается то lem то em модулем.

 

 

igb - это отдельная песня, ровно как и серия карт ЕТ.

вы смешиваете понятия "сетевые карты серии ET на чипах i82576" и "драйвер FreeBSD для сетевых карт на чипах 82576/82575"

 

 

Кроме MSI-X там напаковано, Intel I/OAT DMA Engine, NAPI и т.д.

NAPI - технология ядра Linux по обработке пакетов, поступающих на сетевой интерфейс. К сетевым чипам отношения не имеет.

 

MSI-X комплекмная технология, позволяет организовать стандартных 8 каналов PCI-E x1, для создания интерфейса для сетевой карты 10гиг. Естественоо прерываний поддерживает минимум 64 на девайс.

MSI это технология вызова прерываний в шинах pci/pcie. MSI поддерживает до 32 векторов прерываний, анонсирована в стандарте PCI 2.2 в 1998 году. MSI-X расширение технологии MSI, позволяющее использовать до 2048 векторов прерываний анонсировано в стандарте PCI 3.0 в 2002 году. Соответственно встает вопрос что вы считаете "старой" архитектурой и почему i7 у вас принадлежит ей.

Ссылка на сообщение
Поделиться на других сайтах

На самом деле, то карточка РТ поддерживает технологию MSI,

но хоть это ии круто, без поддержуи на мостах эта фича работать не будет.

на самом деле поддержка msi есть фактически на всех чипах.

"почти" - достаточно чтобы наламать дров.

 

lem - 100мб

em - 1000мб

igb - 10000мб

причем тут igb к 10гигам, а lem к 100мбитам?

Кстати у меня есть сетевая карта, которая в зависимости от версии драйвера обрабатывается то lem то em модулем.

При том, читайте анонсы разработчиков.

А карточка определяется по разному,

потому что драйвер в восьмой фре разбит на три группы lem, em, igb,

а например в седьмой на две em, igb.

 

igb - это отдельная песня, ровно как и серия карт ЕТ.

вы смешиваете понятия "сетевые карты серии ET на чипах i82576" и "драйвер FreeBSD для сетевых карт на чипах 82576/82575"

Нечего не смешиваю, фря ваша, заходите в /sys/dev/e1000,

открывайте например if_igb.c и читайте какие чипы поддерживает данная секция, немного не понял за смешивание.

{ 0x8086, E1000_DEV_ID_82575EB_COPPER, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82575EB_FIBER_SERDES, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82575GB_QUAD_COPPER, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82576, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82576_NS, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82576_NS_SERDES, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82576_FIBER, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82576_SERDES, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82576_SERDES_QUAD, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82576_QUAD_COPPER, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82576_VF, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82580_COPPER, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82580_FIBER, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82580_SERDES, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82580_SGMII, PCI_ANY_ID, PCI_ANY_ID, 0},

{ 0x8086, E1000_DEV_ID_82580_COPPER_DUAL, PCI_ANY_ID, PCI_ANY_ID, 0},

 

Кроме MSI-X там напаковано, Intel I/OAT DMA Engine, NAPI и т.д.

NAPI - технология ядра Linux по обработке пакетов, поступающих на сетевой интерфейс. К сетевым чипам отношения не имеет.

Понял, мысли впереди паравоза.

Следует читать так

Кроме MSI-X там напаковано, Intel I/OAT DMA Engine и т.д. что позволяет реализовать высокопроизводительные решения типа NAPI

 

NAPI - это протокол работы с потоком.

New API (NAPI) это переработанная процедура обработки пакетов в ядре для улучшения производительности для высокоскоростных сетей. NAPI предлагает два существенных улучшения: Interrupt mitigation – работа в высокоскоростной сети может создать тысячи прерваний в секунду, все из которых должны быть обработаны, это создает определенное количество пакетов направленных процессу. Во время таких нагрузок NAPI позволяет драйверу временно отключить обработку прерываний и соответственно уменьшить системную нагрузку. И второе Packet throttling – когда система перегружена и уже должна сбрасывать пакеты, то лучше избавиться от пакетов до того как они начнут обрабатываться. Драйвера поддерживающие NAPI позволяют сбрасывать пакеты до того как они попадут в ядро. Множество современных сетевых карт поддерживают NAPI и лишь в редких случаях, ее поддержку приходится включать отдельно в ветке Device Drivers –> Network device support, для определенного драйвера.

http://rajven.ru/articles/optimizacija_nastroek_drajverov_dlja_kart_intel/index.html

 

Возможно вы будете удивлены, но тот же интел довольно не кисло лобирует линокс,

в даташитах приводит массу выкладок именно под винду и линокс.

 

MSI-X комплекмная технология, позволяет организовать стандартных 8 каналов PCI-E x1, для создания интерфейса для сетевой карты 10гиг. Естественоо прерываний поддерживает минимум 64 на девайс.

MSI это технология вызова прерываний в шинах pci/pcie. MSI поддерживает до 32 векторов прерываний, анонсирована в стандарте PCI 2.2 в 1998 году. MSI-X расширение технологии MSI, позволяющее использовать до 2048 векторов прерываний анонсировано в стандарте PCI 3.0 в 2002 году. Соответственно встает вопрос что вы считаете "старой" архитектурой и почему i7 у вас принадлежит ей.

Старая, это как минимум переход от паралельных шин PCI, на последовательные шины PCI-E,

реализация и поддержка всем железом, а также ОС-ями и софтом - MSI,

отказ от южного моста, использование PCI-E хабов и прочие мелочи от которых срывает крышу.

 

Это довольно емкий материал, сложно судить выдергивая фразочки.

Я написал что было понятно общее предствление о вопросе.

 

Ладно пусть чел точит, понял ему это не особо интересно.

Ссылка на сообщение
Поделиться на других сайтах
На самом деле, то карточка РТ поддерживает технологию MSI,

но хоть это ии круто, без поддержуи на мостах эта фича работать не будет

ну а пример таких мостов будет? ну вот которые типа там не "поддерживают". но PCIE 4x есть.

Ссылка на сообщение
Поделиться на других сайтах

Современные поддерживают все,

а старые, период когда пересадили видаху на пси-е,

встреечаются без поддержки,

и если брать производителей кроме интела.

Но выше писалось, фича не от интела, она разработана в разрезе стандарта,

интел просто один из первых ее реализовал.

 

PS

Хех написал...

Взял первую попашуюся мать

http://hard.rozetka.com.ua/ru/products/details/29625/index.html#tab=characteristics

и ... блин тут южный мост ICH7!!!

 

Согласно даташита, мост подерживает MSI,

http://www.intel.com/assets/pdf/datasheet/307013.pdf

 

но если погуглить то

http://forum.nag.ru/forum/index.php?showtopic=56503&st=20&p=494829entry494829

=========8<----------

Цитата(Lynx10 @ 14.4.2010, 18:46) *

если плата и драйвер может на разных прерываниях TX RX queue обробатывать - тогда не вижу порблем в нагрузке всех ядер на smp_affinity

 

ВООООООТ

И я о том-же!

 

Вот Вы скажите: "Какие могут под линухом,? А какие нет?"

Я (после некоторых мучений) теперь знаю что на ICH9 и ICH10 могут... А на других (что под руку попадали), в том числе ICH7 и чипсеты i5 - i7 не могут....

Вопрос зачем 4 ядра если я их не могу нагрузить?

=========8<----------

 

Не все так кучерявенько,

вполне верояно что реализовано, но толком не работает, поетому в биосе намертво заглушено.

 

Хотя опять же, как сказать, там рси-е под видаху,

видаха всегда включена в северный мост, южный мост как бы и не при делах,

поетому если сетевую ставить на место видео, то проблем не будет, наверно,

потому что всегда есть какоето "НО".

 

То есть дешовые мамки желательно тестонуть перед покупкой.

Ссылка на сообщение
Поделиться на других сайтах

...

То есть дешовые мамки желательно тестонуть перед покупкой.

...

Уважаемый, а какую связь вы вообще углядели между _южными_ мостами и поддержкой нужных фич для pci-e?? Хватит смущать народ домыслами..

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.


×
×
  • Створити нове...