|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Slawa Olhovchenkov 2:5030/500 06 Jun 2002 20:52:22 To : Vladimir Kurtukov Subject : Поллинг -------------------------------------------------------------------------------- 06 Jun 02, Vladimir Kurtukov writes to Slawa Olhovchenkov: Так, проведем разбор ошибок. VK>>>>> docs/TIPS.txt: VK>>>>> Most PCI based Ethernet drivers support PCI busmastering DMA. VK>>>>> fxp driver is the most popular in the FreeBSD community. VK>>>>> (there is a report that ALTQ works better with a cheap card VK>>>>> since frequent interrupts give ALTQ more control. obviously, VK>>>>> there is a tradeoff between CPU load and control.) VK> большинство драйверов для PCI карт поддерживают DMA, bus mastering -- это не DMA VK> fxp - самый популярный. (есть сообщение, что ALTQ работает VK> лучше с дешевыми картами, т.к. более частые прерывания дают VK> ALTQ больше контроля) Все хорошо, только привязка к bus mastering не совсем верна. Это следствие не bus mastering, а того, что карта может принять задание на передачу нескольких пакетов за раз и рапортовать только по завершении всей передачи, что не позволяет altq отслеживать моменты отправки нужных ей пакетов и выдерживать необходимые интервалы. Этот же эффект возможен и без всякого DMA/bus mastering, если пакеты можно укладывать в буфер карточки. У дижиборд буфера бывают до мегабайта. VK> доп. информация для размышления: ALTQ работает только с исходящим VK> траффиком. драйвер вытаскивает пакеты из очереди и буферизует их (у fxp - VK> до 128 пакетов), карточка потом выгребает оттуда пакеты и посылает, дергая VK> irq по завершению. чем больше пакетов буферизуется, тем реже дергается VK> irq, тем меньше возможностей для контроля у ALTQ. у не-DMA карт/драйверов, VK> так понимаю, прерывание дергается после передачи каждого пакета. fxp умеет генерировать промежуточные прерывания и altq этим пользуется. Только вот похоже очередь внутри карты перестроить все равно не способна... VK> естественно, в более низком irq rate виноват не сам DMA, а его VK> использование в драйвере Hет VK> (ALTQ патчит драйвера и уменьшает кол-во буферизуемых пакетов) Это ты гонишь. Т.е. дравера-то патчатся, но совсем с другой целью -- что бы они использовали процедуры/макросы работы с очередями. ... Suxx & Must Die! --- GoldED+/BSD 1.1.5 * Origin: (2:5030/500) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/22213cff95bf.html, оценка из 5, голосов 10
|