Вопро про дешевые сетевухи на дорогих компах (из треда про hibernate).

sergey_m

Почему люди покупают дорогие машины баксов так на 500-600, но экономят 10 долларов на сетевухе покупая это говно с рогами? Вот в нашей сети таких полно. Не могу найти логичный ответ...

zsn66

Ура! Флейм про сетевухи!
Можешь описать способ, как заметить говнистость оного изделия?
Условия:
a) комп достаточно мощный, класса PIII или выше
б) только одна сетевуха в компе
в) софт настроен разумным образом (к сожалению, трудно формализуемое условие)
В обмен могу назвать несколько причин, почему нужно покупать карты на 8139.

sergey_m

/*
* The RealTek 8139 PCI NIC redefines the meaning of 'low end.' This is
* probably the worst PCI ethernet controller ever made, with the possible
* exception of the FEAST chip made by SMC. The 8139 supports bus-master
* DMA, but it has a terrible interface that nullifies any performance
* gains that bus-master DMA usually offers.
*
* For transmission, the chip offers a series of four TX descriptor
* registers. Each transmit frame must be in a contiguous buffer, aligned
* on a longword (32-bit) boundary. This means we almost always have to
* do mbuf copies in order to transmit a frame, except in the unlikely
* case where a) the packet fits into a single mbuf, and b) the packet
* is 32-bit aligned within the mbuf's data area. The presence of only
* four descriptor registers means that we can never have more than four
* packets queued for transmission at any one time.
*
* Reception is not much better. The driver has to allocate a single large
* buffer area (up to 64K in size) into which the chip will DMA received
* frames. Because we don't know where within this region received packets
* will begin or end, we have no choice but to copy data from the buffer
* area into mbufs in order to pass the packets up to the higher protocol
* levels.
*
* It's impossible given this rotten design to really achieve decent
* performance at 100Mbps, unless you happen to have a 400Mhz PII or
* some equally overmuscled CPU to drive it.
*/
Bill Paul <ctr.columbia.edu>
Electrical Engineering Department
Columbia University, New York City

sergey_m

Еще здесь ничего не сказано о хитром китайском способе
ускорения сетевухи - снижение стандартного transmit treshold.
Это уже к вопросу о том, как влияет Realtek 8139 на общую работу
сети.

sergey_m

Я ответил сам себе. Читай там.

zsn66

Это я видел.
Меня интересует разница в производительности по сравнению с любым другим адаптером по твоему выбору, выраженная в цифрах, при выполнении вышеописанных условий(overmuscled CPU etc.)

alexpar

и что надо покупать, например из предложенного (кусок из прайса ultracomp):
10/100 (Realtek 8139) PCI OEM XXX 4.40
3COM 3C905C-TX-M XXX 25.20
3COM 3C905C-TX-NM XXX 29.70
3COM 3C996B-T 10/100/1000 PCI-X Server NIC XXX 126.50
3COM 3CSOHO100B-TX 10/100 ждем 17.12.02 18.70
CNet CN100TX (DEC) PCI 10/100 PCI 32bit 10/100Mbps UTP with BootROM Socket, DEC chipset XXX 25.70
CNet CNPro200 (Davicom) PCI 10/100 PCI 32bit 10/100Mbps UTP , Davicom chipset XXX 6.60
CNet GNIC-2000 10/100/1000 Mbps Gigabit FEthernet PCI 32bit 10/100/1000Mbps , STP , VLAN XXX 71.50
Compex RE100TX PCI 10/100 XXX 9.50
D-Link DFE 528TX 10/100 OEM XXX 10.40
D-Link DFE 538TX 10/100 Retail X +ждем 18.12.02 11.40
Eline-Net 320G-TX1 PCI10/100/1000 Gigabit Card Ret XXX 38.50
Eline-Net 320X-R (Realtek) PCI 10/100 Retail X +ждем 17.12.02 5.20
Eline-Net 320X-S (Myson) PCI 10/100 Retail XXX 4.70
Genius GF100TXR (Realtek 8139) PCI OEM XXX 5.80
Genius GF100TXR (Realtek 8139) PCI Retail XXX 6.20
Lantech FastNet TX 10/100Mb Retail 5 лет гарантии XXX 8.60
PILA 8460 INTEL EtherExpress Pro 100+ PCI XXX 21.50
PILA 8460C3I INTEL EtherExpress Pro 100+ PCI XXX 25.30
PILA 8465B INTEL EtherExpress Pro 100+ PCI XXX 9.40
PILA 8472C3I PRO 10/100 Dual Port Server Adapter XXX 132.00
PVLA 8390MT PRO/1000 MT DeskTop Adapter XXX 49.50
PVLA 8490MF PRO/1000 MF Server Adapter Optical XXX 484.00
PVLA 8490MT PRO/1000 MT Server Adapter XXX 121.00
PVLA 8492MF PRO/1000 MF Dual Port Server Adapter Optical XXX 770.00
Planet 10/100/1000 ENW-9602T Desktop adapter XXX 29.70

zsn66

Это ведь актуально только при half-duplex?

Chupa

К RTL8139C+ это тоже относится?

zsn66

Нет.
А где такие купить?

Chupa

хз
Давно ищу и пока ни разу не видел.
Но если есть драйвер, то наверняка есть такой чип, а значит и собранная на нём сетевуха

sergey_m

Теоретически да.
Но дешевым свитчам крышу все равно сносит от флудящих 8139.

zsn66

WOW! Научи сносить крышу свитчу!

sergey_m

100 Мбит при interrupt > 50 % на одной сетевухе назвать
производительностью сложно. А когда их несколько то машина
просто freezes. На х такую производительность.
Кроме всего вышесказанного, они чаще всего горят, флудят, и глючат. Я видел с десяток горелых, пару срущих в сеть и пару работающих на скорость 20 Кб/с.

sergey_m

Очень просто. Так как это делает etherkiller.
P.S. Судя по pingам в вашей сети, у вас есть глючащие свитчи.

alexakool

>Почему люди покупают дорогие машины баксов так на 500-600, но экономят 10 долларов на сетевухе покупая это говно с рогами?
Потому, что при покупке компа понятно, что за бОльшие деньги покупаешь бОльшую производительность, бОльшие ресурсы и их наличие явно скажется на твоей работе. А с сетевухой всё не так просто, ну куплю я карточку за 30$, а скорость скачивания то не факт что увеличится. По той же самой причине большинство покупает мыши по цене до 10$, хотя существуют гораздо более хорошие от 20 и т.д.
Разъясни, какая выгода мне - обычному пользователю от дорогой сетевухи.

sergey_m

Ну вот эти вообще преимущественно серверные дорогие (а оптика и гигабит вообще не в тему):
PVLA 8490MF PRO/1000 MF Server Adapter Optical XXX 484.00
PVLA 8490MT PRO/1000 MT Server Adapter XXX 121.00
PVLA 8492MF PRO/1000 MF Dual Port Server Adapter Optical XXX 770.00
Planet 10/100/1000 ENW-9602T Desktop adapter XXX 29.70
3COM 3C996B-T 10/100/1000 PCI-X Server NIC XXX 126.50
Socket, DEC chipset XXX 25.70
CNet GNIC-2000 10/100/1000 Mbps Gigabit FEthernet PCI 32bit 10/100/1000Mbps , STP , VLAN XXX 71.50
PVLA 8390MT PRO/1000 MT DeskTop Adapter XXX 49.50
Eline-Net 320G-TX1 PCI10/100/1000 Gigabit Card Ret XXX 38.50
Вот это сетевухи хорошего качества, самое оно для компа за > $500 :
3COM 3C905C-TX-M XXX 25.20
3COM 3C905C-TX-NM XXX 29.70
3COM 3CSOHO100B-TX 10/100 ждем 17.12.02 18.70
CNet CN100TX (DEC) PCI 10/100 PCI 32bit 10/100Mbps UTP with BootROM
Lantech FastNet TX 10/100Mb Retail 5 лет гарантии XXX 8.60
PILA 8460 INTEL EtherExpress Pro 100+ PCI XXX 21.50
PILA 8460C3I INTEL EtherExpress Pro 100+ PCI XXX 25.30
PILA 8465B INTEL EtherExpress Pro 100+ PCI XXX 9.40
PILA 8472C3I PRO 10/100 Dual Port Server Adapter XXX 132.00
Вот это сетевухи среднего класса:
CNet CNPro200 (Davicom) PCI 10/100 PCI 32bit 10/100Mbps UTP , Davicom chipset XXX 6.60
Compex RE100TX PCI 10/100 XXX 9.50
D-Link DFE 528TX 10/100 OEM XXX 10.40
D-Link DFE 538TX 10/100 Retail X +ждем 18.12.02 11.40
Вот это все треш с рогами:
Eline-Net 320X-R (Realtek) PCI 10/100 Retail X +ждем 17.12.02 5.20
Eline-Net 320X-S (Myson) PCI 10/100 Retail XXX 4.70
Genius GF100TXR (Realtek 8139) PCI OEM XXX 5.80
Genius GF100TXR (Realtek 8139) PCI Retail XXX 6.20
10/100 (Realtek 8139) PCI OEM XXX 4.40

zsn66

> interrupt > 50 %
Ты веришь этому счетчику? А основания на это есть?
Правильный метод измерения такого оверхеда - дифференциальный. То есть насколько замедляется работа полезного фонового процесса. Я таких измерений не проводил, на глаз разницы с intel eepro100 и с 3c905b на своих машинах не замечается. Да, активно работающая сетевуха одна. При нескольких - могу поверить, что есть существенная разница.
> А когда их несколько то машина
> просто freezes.
Против этого спасает NAPI/polling etc. И ничего больше.
> Кроме всего вышесказанного, они чаще всего горят, флудят, и глючат.
Верю, в частности, потому что сборка как правило не брендовая. Зато цена позволяет заменять, не разбираясь, и отправлять глючные экземпляры на свалку.
Кстати, покупал недавно карту с чипом от Intel. Судя по качеству пайки, производилась китайскими крестьянами вручную. Маза если купить крупную партию, брака будут немало.

sergey_m

Фильмы качаться будут быстрее и проц при этом будет менее загружен. Достаточно для обычного пользователя?

zsn66

> скорость скачивания то не факт что увеличится.
не увеличится, и это факт
> какая выгода мне - обычному пользователю от дорогой сетевухи.
никакой. Правда, можно сказать, что $25 - это не дорого

alexakool

Стоит ли рассуждать о плохих сетевухах, если в сетке до сих пор у некоторых стоят 10Мб свичи и хабы.

zsn66

Купить свитч на шестерых дешевле, чем каждому по сетевухе за $25.

alexakool

Я не спорю, у меня в округе все 100мб, но явно между мной и сервером есть 10мб свич и его владельцам пофигу. Как-нибудь наберусь энтузиазма и пройду посмотрю у кого он.

sergey_m

> interrupt > 50 %
> Ты веришь этому счетчику? А основания на это есть?
Лучше расскажи подробно, какие есть основания не доверять. Я так
понимаю речь идет о данных из vmstat или top?
> таких измерений не проводил, на глаз разницы с intel eepro100 и с
> 3c905b на своих машинах не замечается.
Качать нужно с нескольких машин, что бы побольше траффика было.
Для чистоты эксперимента в /dev/null. Больше ни чем машину не загружать, кроме собственно процесса которым испытываешь. Процесс в свою очередь не должен теребить винты, память и тп., а просто честно
кушать проц.
А "на глаз" не убедительно.
> > А когда их несколько то машина
> > просто freezes.
> Против этого спасает NAPI/polling etc. И ничего больше.
Как то пока поллинга не было, с 4мя - 5ю сетевухами Intel обычный Celeron или Duron отлично справлялся, а с 4мя 5ю RealTek он слил бы
воду, если бы кто-то умудрился их запустить. Потому что делить прерывания они ни хуя не умеют. Больше двух в одной машине я не видел. Кстати, с другими устройствами они конфликтуют не хуже. Например Abit KT7 не запускается если в ней стоит RealTek8139 + 3Com900. Че то я от поллинга отвлекся. Расскажи ка мне под какой
ОС драйвер Rl8139 умеет поллить?
> > Кроме всего вышесказанного, они чаще всего горят, флудят, и глючат.
> Верю, в частности, потому что сборка как правило не брендовая. Зато > цена позволяет заменять, не разбираясь, и отправлять глючные
> экземпляры на свалку.
Не далее как три недели назад в нашей сети одной снесло крышу
и она кричала в сеть нулями со скоростью 20 Мбит/с, что быстро подвесило дешевые noname свитчи. Учитывая что MAC выглядел вот так 0:0:0:0:0:0, то найти глючную сетевуху было очень сложно, пришлось обежать все свитчи поочередно выдергивая каждый кабель.

sergey_m

> Купить свитч на шестерых дешевле, чем каждому по сетевухе за $25.
И как говорится, результат подобной политики администрации на лицо.
Имеем:
1) сеть в 70 свитчей с неизвестной топологией
2) packet lost 25 %
3) подсетку на 64 тысячи адресов, в которой находятся конфликтующие IP

zsn66

> Лучше расскажи подробно, какие есть основания не доверять. Я так
> понимаю речь идет о данных из vmstat или top?
В линуксе отдельного счетчика interrupt time нет, есть system time, и считается приблизительно: каждый тик таймера смотрят, чем занимается процессор. Считать точно - слишком дорого: надо определять время каждого переключения контекста - даже через rdtsc это десятки тактов процессора - noticable performance hit.
> Для чистоты эксперимента в /dev/null. Больше ни чем машину не загружать, .....
примерно так и делал. Ну не только на глаз, использование процессора через вышеупомянутые счетчики тоже смотрел.
> Как то пока поллинга не было, с 4мя - 5ю сетевухами Intel обычный
> Celeron или Duron отлично справлялся,
А пробовал кормить фреймами минимальной длины @wire speed (те самые 148.8kpps)? Тут и с двумя сетевухами livelock неминуем, а возможно и с одной, несмотря на interrupt mitigation в железе. (Честно скажу, сам не пробовал, просто ещё никто не намерял на писюке больше 120kpps при interrupt driven processing).
>Расскажи ка мне под какой
>ОС драйвер Rl8139 умеет поллить?
Не знаю. Приспичит - можно самому драйвер переписать. Но проще на роутер купить intel, но только туда
> и она кричала в сеть нулями со скоростью 20 Мбит/с,
надо попробовать

zsn66

> Потому что делить прерывания они ни хуя не умеют. Больше двух в одной
> машине я не видел.
Че, правда? (c)
Если кто одолжит 2--3 единицы оного дерьмеца, готов попробовать запустить 3--4 в одной машине соответственно.
> Например Abit KT7 не запускается если в ней стоит RealTek8139 +
> 3Com900.
А у меня Gigabyte 6OXT перезагружался самопроизвольно, когда стоял intel.
Realtek 8139 + ne2000 pci noname -- полёт нормальный. И что?

zsn66

1) сеть в 70 свитчей с неизвестной топологией
есть такое дело
2) packet lost 25 %
те, кто не чешутся по полгода -- сами виноваты.
3) подсетку на 64 тысячи адресов, в которой находятся конфликтующие IP
злонамеренные действия отдельных персонажей -- после воспитательной беседы прекращаются
А у вас зато core router виснет по нескольку раз в неделю, несмотря на интелы и 3комы. И негров линчуют

sergey_m

> А у вас зато core router виснет по нескольку раз в неделю, несмотря на интелы и 3комы.
Это уже в прошлом.

Chupa

Про Abit KT7 подтверждаю.
8139 + intel не живёт, хотя две 8139 работают нормально

zsn66

Ага, 2 дня назад кончилось

sergey_m

> > понимаю речь идет о данных из vmstat или top?
> В линуксе отдельного счетчика interrupt time нет, есть system > time, и считается приблизительно: каждый тик таймера
Во FreeBSD есть. Имхо отражает реальное распределение
процессорного времени.
> >Расскажи ка мне под какой
> >ОС драйвер Rl8139 умеет поллить?
> Не знаю. Приспичит - можно самому драйвер переписать. Но
ну-ну, вперед

sergey_m

7 дней назад, если быть точным.
В отличие от сети сектора Б, мы свои проблемы устраняем
более оперативно.

zsn66

Ну с тех пор у вас было несколько пауз по паре часов на графиках.
Может где-то внутри себя оно и работало, не совсем висло, но людей, сидящих за отсохшим интерфейсом, это вряд ли радовало.

vuvyatkin21

> Во FreeBSD есть. Имхо отражает реальное распределение процессорного времени.
чушь
иди читай исходники

sergey_m

Это я с mrtg баловался. Машина при этом работала.

sergey_m

Молодец, поумничал, Anonymous.
То есть имеется в виду, что ты их уже прочел? Тогда подскажи мне убогому в каком месте читать?
P.S. В дальнейшем фразы типа RTFM и RTFS без конкретной ссылки будут игнорироваться.

shlyumper

В линуксе отдельного счетчика interrupt time нет, есть system time, и считается приблизительно: каждый тик таймера смотрят, чем занимается процессор. Считать точно - слишком дорого: надо определять время каждого переключения контекста - даже через rdtsc это десятки тактов процессора - noticable performance hit.
Не верь этому счетчику ни капли. Мы в лабе ставили эксперименты, собрали роутер с двумя гигабитными Intel'ами 10/100/1000, и начали измерять его загрузку. Качаем с одного интерфейса на другой около 800 MBit/sec, при этом загрузка показывается около 10%. НО начинаешь пытаться что-то делать - дичайшие тормоза. В общем как-то криво Linux измеряет system load....

zsn66

Ладно, отмазался.
А теперь - обещанные преимущества карт на RTL8139:
1) Широкое рапространение и меньшее количество вариантов по сравнению с чипами от Intel и 3com. Это приводит к упорощению разработки хороших драйверов. На сегодняшний день в линухе драйвер 8139too.c работает самым предсказуемым образом по сравнению с любым другим драйвером для 10/100 ethernet adapter. Про зависания и transmit timeout'ы по вине драйвера все давно забыли. Intel до недавнего времени держало в секрете errata на свои чипы, из-за чего некоторые модификации были просто не работоспособны с драйвером eepro100.c -- трудно воспроизводимые глюки с неизвестными workaround'ами, и это длилось годами. Недавно ситуация улучшилась, но до полного счастья ещё далеко, хотя карты от Intel можно покупать почти без опасений. Политика 3Com примерно такая же, с результатами ты и сам столкнулся
Драйвер для ne2000 pci ещё стабильнее, но это только 10Mbit
2) Отсутствие неестественного интеллекта в чипе, который нужно отключать, чтобы карта нормально выполняла свою работу - приём и отправку пакетов. Характерный пример - работа с oversized frames, нужная для реализации 802.1q. Интеллектуальные чипы нужно учить, что такие фреймы выкидывать не стоит - модификация драйвера. Между тем 8139 и 8029 работают без проблем, так как поддерживают лишь необходимый минимум функциональности.
Больше фичей => сложнее устройство => выше цена, больше глюков, сложнее использование

sergey_m

Надо признать, что какие-то linux-специфичные пробелемы получились. Вo FreeBSD с пукнтом 1) вообще наоборот. Драйвер
fxp самый стабильный и безглючный из всех сетевух. (Если не считать не аккуратных коммитов от iedowse, но кто юзает development ветки должен быть к этому готов). В противоположность ему rl самый капризный и глючный. См, приведенный в самом начале комментарий от автора. Что касается 3Com, то я вынужден согласиться, что некоторые экземпляры ведут себя не так как должны по докам.
Второй пункт тоже явно Linux специфичен, потому что под FreeBSD все наоборот с поддержкой oversized frames:
The NICs that support oversized frames are as follows:
dc(4) supports long frames for vlan natively.
de(4) requires defining BIG_PACKET in the
/usr/src/sys/pci/if_de.c source file and rebuilding the
kernel. The hack works only for the 21041, 21140, and
21140A chips.
fxp(4) supports long frames for vlan natively.
sis(4) supports long frames for vlan natively.
ste(4) supports long frames for vlan natively.
tl(4) has support for long frames.
tx(4) supports long frames for vlan natively.
xl(4) supports long frames only if the card is built on a newer
chip (Cyclone and above).

zsn66

Ну если комментарий до сих пор не обновлён, то и качество кода соответствующее?
Может, Intel приплачивает core team?

sergey_m

Комментарий сделан для тех, кто задаст себе вопрос "почему так хуево работает?" и как продвинутый пользователь полезет в исходники драйвера. Что бы долго не рюхал, а сразу понял что к чему. Ну и плюс wpaul таким образом снимает с себя ответственность. А качество кода здесь не причем. wpaul один из ведущих драйверописцев под FreeBSD, кстати имхо и под линукс тоже.
Что же до мазы с Intel, то очень даже может быть.

solteron

Кстати, я тут с настройками драйвера побаловался...
Теперь не могу вспомнить дефолтные параметры
Какой надо прописывать Early Tx Threshold (RTL8139/810X)?

krishtaf

господа, а не пойти ли Вам в приват, вы так мило перепёздываете, что нафлудили здесь куеву тучу пальцастых постов. И неужели до сих пор не выяснили у кого круче пальцы ?
Это не наезд, так просто на заметку. Флудящие админы не вызывают доверия .

ol4a21

Маза зря ты так
Всегда интересно посмотреть, как рюхи письками меряюца

sergey_m

Чем больше тем лучше. Реального выигрыша ты не получишь
от уменьшения, а вот сеть подколбасить сможешь.

solteron

50-60 ?

sergey_m

На память не помню. Нужно в инете поискать рекомендуюемую
для FastEthernet.

zsn66

O!
Date: Tue, 17 Dec 2002 14:03:50 -0800
Subject: [ANNOUNCE] Intel PRO/100 software developer manual released
From: "Feldman, Scott" <scott.intel.com>
To: linux-vger.kernel.org, oss.sgi.com
Cc: LOSTeam <intel.com>
X-Mailing-List: linux-vger.kernel.org
Available at http://sourceforge.net/projects/e1000.
The full title is:
Intel 8255x 10/100 Mbps Ethernet Controller Family
Open Source Software Developer Manual
Revision 1.0
The manual is intended to support the maintenance of the e100 driver (or the
best driver for the PRO/100 networking hardware ;-). The manual covers the
82557, 82558, 82559, 82550, and 82551 Ethernet controllers.
I would like to thank Jeff Garzik for encouraging this publication, and for
having the patience to deal with the Intel machine.
I would also like to thank the Intel editors and reviewers: Carolyn
Abrigana, Larry Bates, Julie Donnelly, John Ronciak, Wen-Hwa Tao, Eli
Kupermann, David Valdez, Colleen Culbertson, and especially Glenn Begis for
not giving up.
-scott

Chupa

Блин, когда прочитал, тоже сразу захотел сюда запостить, но не стал
eepro100 действительно хуже, чем e100? а то "за державу обидно" (c)

zsn66

eepro100 писался без доступа к документации от Intel
со всеми вытекающими
но старее и правильнее использует внутренние ядреные API, e100 наверное тоже скоро вырастет, если еще не
есть NAPI-fied eepro100, про e100 не в курсе

Filan

e100 держит "не все" интеловские карточки, в отличии от eepro100.

Chupa

Какого хрена он тогда "the best"?

bobking

4.73 прав (вслед за 0.10). Смотри sys/kern/kern_resource.c и kern_clock.c. Для -current ищи ke_iticks, для -stable -- p_iticks (по памяти).
И ещё: неплохо бы тебе слегка изучить архитектуру ядер UNIX и клонов, прежде чем постить комментарии из их сырцов. Тогда, в частности, станет очевидна неизбежность подобного подсчёта времени в переносимых ОС общего назначения.
А то создаётся впечатление, что осведомлённость о "неаккуратных коммитах iedowse" заменяет тебе минимально необходимую теоретическую подготовку.

Да, кстати! Прежде чем отвечать мне, спроси себя, понимаешь ли ты смысл load average и wired memory?

bobking

Маза самый глючный if_sis.c. Просто перестаёт работать через некоторое время. А то и вовсе не рюхает некоторые из интегрированных вариантов.

sergey_m

(Anonymous опять кинул понты)
По сути: я так понял Вы имели в виду. что statclock вызывается
не более чем hz раз в секунду, а то и меньше. По умолчанию hz = 100. Тк количество прерываний в секунду может быть на два с лишним порядка больше, то статистическая выборка получится недостаточно достоверная. С этим согласен.
Но я обычно собираю ядро с HZ=2000, и именно с ним я замерял interrupt time для сетевух и сравнивал polling с его
отсутствием. Конечно 2000 это на порядок меньше чем возможное число прерываний, но меня удовлетворяет такая достоверность.
Причем здесь LA и wired memory я не понял. То, что оценка LA сложный момент я в курсе, но причем это к обсуждению оценки
interrupt time?
P.S. Спасибо за более адекватный разговор, нежели "иди читай исходники". а анонимусность все же анноит.

zsn66

Дело не в частоте тиков, а в принципиальной зависимости событий прихода прерывания от таймера и от сетевой карты. Зависимость понимается в терминах теории вероятностей. В результате этой зависимости может возникать систематическая ошибка измерения. Знак и величина этой ошибки, как мне представляется, сильно зависит от железа и от устройства софта, используемого для создания нагрузки.

zsn66

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

bobking

>не более чем hz раз в секунду, а то и меньше. По умолчанию hz = 100.
stathz != hz.
Набери у себя
sysctl kern.clockrate
> но меня удовлетворяет такая достоверность
Какая разница, что тебя удовлетворяет? Ты же сам сказал, что это меньше на порядок.
>То, что оценка LA сложный момент я в курсе, но причем это к обсуждению оценки
interrupt time?
А то, что не хер говорить того, чего не знаешь. Либо знаешь, но на уровне внешних эффектов.
P.S. Ничего личного. Просто иногда действительно лучше RTFS.

sergey_m

Да, действительно. Обычно 128 раз или HZ раз когда profiling.
Осталось только доказать, что 128 проб в секунду при числе
событий порядка 10^3 - 2*10^4 не даст точности до второго
знака.
Кто нибудь из математиков помнит статистику, а то я не в силах посчитать?
Кстати маза еще изменить это hardcoded 128, на что-то другое.
И посмотреть на то, как изменится точность. Но откуда взять
стабильный генератор прерываний?

bobking

Да, Глеб, ты умеешь признавать ошибки. Это вызывает уважение.
Маза делать, как сказал Савкин, т.е. запустить фоновый процесс* и смотреть на результаты.
*SPECint?

sergey_m

Я пока еще не совсем признал.
Мне нужно что бы человек знающий теорию вероятности доказал, что 128 проб в секунду при 10^4 событий не даст точности до второго знака. Желающих подумать над этим пока не находится.
Что до прогрузки user-level процессом, то тут все таже проблема: я не могу придумать как создать равномерную
загрузку прерываниями. Я вижу это так: считаем например
конфигурацию молекулы метана , это около 20 секунд
на современной машине, записываем t1. Потом прогружаем машину прерываниями и считаем еще раз, записываем t2. Тогда (t2-t1)/t1 будет interrupt. Сравниваем с тем, что показывал
в это время top.
Проблема именно в прогрузке прерываниями.
При скачивании по нашей сети траффик скачет, загрузка при этом тоже скачет. Можно попробовать использовать прерывания от IDE, но как?
dd if=/dev/rad0 of=/dev/null дает в основном прогруз по system time.
А при отсутствии равномерной загрузки мы не сможем достоверно замерять.
Что есть SPECint ?
P.S. И еще попробовать profiling, когда не 128 раз, а HZ.

bobking

Увеличить время теста (это я вспоминаю графики загрузки)?
А про SPECint смотри на http://www.spec.org .

tokuchu

А что это ты "D-Link DFE 528TX 10/100 OEM" тоже в средний класс вписал? Он же на 8139!

maksimy

И Compex тоже, кстати...
А скорость увеличится, если поменять сетевухи всем (и свичи тоже. От одной купленной толку будет немного, конечно. Исключение - загруженность процессора, что есть вполне достаточное оправдание для того, чтобы вложить 25 баков.

abrek

Господа, в этом треде принято обосновывать свои утверждения насчёт скорости и загрузки процессора

maksimy

Возьми и протести... Включи на закачку что-нить на двух разных сетевухах и запусти параллельно какой-нить бенч.
Циферки покажешь нам
Я бы пробенчил, тока сетевуха у меня одна - второй (хорошей) нету )

Vl4dimir

Срежьте этого оленя!

abrek

Уважаемый, Вы высказали утверждение - Вам его и доказывать.
Что касается скорости передачи, я утверждал, что для карт на rtl8139 она не хуже, чем для любых других, и это факт: у меня без проблем достигается более 11700000 байт/сек при передаче по FTP, а это более чем 97% от теоретического максимума для Fast Ethernet (при MSS=1460, MTU=1500, ethernet frame size = 1518 независимо от карт.
Использование процессора мне измерять влом, как я уже сказал. Хватает того, что "на глаз" разницы не заметно.
Оставить комментарий
Имя или ник:
Комментарий: