Linux and FreeBSD

From
Slawa Olhovchenkov (2:5030/500)
To
Constantin Stefanov (2:5054/37.63)
Date
2005-05-30T14:59:16Z
Area
RU.UNIX.BSD
Hello Constantin!

30 May 05, Constantin Stefanov writes to Slawa Olhovchenkov:

 >> Это прости, что мерялось, а? Или это "петька, приборы! 17! что 17? а что
 >> приборы?"
 >> комп в комп в тыкается или есть какой-то свитч?
 >> какой размер пакета?
 >> А то время передачи 1500 байт по гигабитному каналу
 >> 1500*8/10^9*10^6=12мкс.
 CS> Чтобы не быть голословным, вот тебе результат быстрого теста для
 CS> InfiniBand. По всей видимости, это не round-trip delay, а просто
 CS> задержка от начала передачи сообщения джо его полного приема картой на
 CS> том конце.
 CS> Длина   латентность,
 CS> сооб-   мкс
 CS> щения,
 CS> байт
 CS> 0   5.7
 CS> 1   5.97
 CS> 10  6.01
 CS> 100 6.35
 CS> 1000    9.82
 CS> 1500    10.27
 CS> 1501    10.26
 CS> 2000    10.88
 CS> 5000    13.27
 CS> 10000   19.44
 CS> 100000  127.48

Не верю. Сам посмотри, 1500 байт и 2000 байт передаются практически одинаковое время (10мкс).
А минимальная задержка (для 1 байта) -- 5мкс. Какая у тебя скорость в канале? 1.25Гб/с? 10000 байт должны передаваться 10000*8/(1.25*10^9)*10^6=64мкс, у тебя что там, машина времени?

 CS> Система не самая лучшая (свитч  не фонтан, да и глюк в матери мешает),
 CS> поэтому получается больше 5 мкс. 4 мкс, по утверждению разработчика,
 CS> достигается на PCI Express.
 CS> Теперь жду от тебя аналогичной таблички  на гигабитный эзернет, и , в
 CS> идеале, на 10 Gb.

Я не опущусь до такого позора.

 CS> Что куда тыкается - это от технологии зависит. InfiniBand и Myrinet -
 CS> там свитч есть. В SCI - нет, там станции обйединены в тор (одномерный,
 CS> двумерный или трехмерный, есть варианты).

ОК, бум знать.

 CS> Сразу насчет соседнего письма. В Myrinet - точно не store-and-forward,
 CS> там на каждое сообщение пробивается что-то типа виртуального канала. А
 CS> уж свитч устроен так, чтобы это все блокировалось как можно реже (не
 CS> уверен, что там используется схема вообще свободная от блокировок, но
 CS> такое может быть).

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

 CS> В InfiniBand - точно не знаю. Вероятно, тоже не store-and-forward. Там
 CS> внутри свитча fat-tree, т.е. такая схема, которая может коммутировать
 CS> одноверменно любые пары портов без блокировок (то есть скорость обмена
 CS> пары узлов не зависит от того, какая нагрузка на остальных парах).

Ой, рокет сайнс, тоже мне.

 CS> А теперь объясни, где там ЖОПА в не store-and-forward.

Гуляющие задержки.
Когда идет передача на какую-то станцию все остальные желющие ей что-либо сказать сосут лапу и не могут отослать желаемое свичу дабы начать пересылать пакеты другим адресатам.
Если есть желание -- могу поискать более детальные исследования. Это не только в коммутаторах езернета различного вида обнаружилось, но и в сетях хранения данных.

 CS> Теперь насчет драйверов. Во-первых, в этих технологиях нет такого
 CS> маленького ограничения на макс. размер пакета. Я не знаю, где он какой,
 CS> но даже если инкрементировать размер сообщения по единичке, то скачка,
 CS> как на ethernet от 1500 к 1501 ты не получишь, т.е. меньше прерывания.

Я про _GigabitEthernet_ говорю. Не про Ethernet, не про FastEthernet. Ты разницу видишь? На GigabitEthernet допустимы jumbo frames, это 9000 байт как минимум.

 CS> Во-вторых, на InfinBand релизована хитрая технология RDMA (Remote
 CS> DMA), которая позволяет дать карточке команду "отслать вот эту область
 CS> данных (ну или принять от того-то туда-то)", после чего весь процесс
 CS> произойдет без прерываний, т.е. опять имеем уменьшение нагрузки.

А теперь без булшита -- чем это круче тривиального busmaster в тривиальныйх интелях и броадкомах?
И почему тебе после отсылки прерывание не нужно?

 CS> На карте стоит достаточно большая своя память (от 128 МБ), так что
 CS> опять часто дергать не приходится.

Типа экзотика? Не смешно.

 CS> На карте релизована аппаратно что-то вроде схемы портов для TCP, т.е.
 CS> карта сама может разбираться, какой поток для какой программы и
 CS> запихивать его в нужную область ОЗУ без участия драйверов.

Ой сомневаюсь я в практической применимости.

 >> 10GE уже год как есть.
 CS> Вероятно, это будет альтернативой. Оно слишком недавно появилось, чтобы
 CS> получить широкое распространение. Хотя опять-таки надо смотреть на
 CS> параметры и цены.

xEthernet -- это майнстрим. Его будет много и дешево.

... Вам не нpавится pезультиpующий код? Тем  хуже  для  вас!
--- GoldED+/BSD 1.1.5
 * Origin:  (2:5030/500)
SEEN-BY: 46/50 50/203 400/814 450/186 247 1024 451/30 550/196 4635/4 4652/15
SEEN-BY: 5000/5000 5011/13 5015/10 5019/31 5020/52 154 175 400 545 549 639 715
SEEN-BY: 5020/758 830 937 1523 1604 1630 2020 2142 2238 2450 2590 4441 5021/29
SEEN-BY: 5022/128 5025/3 750 5027/16 5029/32 5030/49 115 473 500 556 966 1063
SEEN-BY: 5030/1900 5031/70 72 5035/38 5036/34 5042/13 5049/50 97 5054/1 4 8 9
SEEN-BY: 5054/28 35 36 37 63 66 67 70 75 81 84 85 5055/95 5062/1 10 5063/3
SEEN-BY: 5067/2 5069/7 5070/1222 5079/23 5080/80 1003 5082/6 5083/21 5085/13
SEEN-BY: 5090/108 5095/20 5096/18 6000/12 254 6001/10
PATH: 5030/500 5020/4441 545 5054/1 37