FreeBSD on SMP with HTT

KAPUSTA

Кто-нибудь пробовал как FreeBSD себя на SMP машинах себя ведет?
Очень интересно, если кто-нибудь FreeBSD с Linux на этот предмет сравнивал...

janlynn

linux начиная с 2.4.x нормально все делает

eee1

Из инета можно читать что-то типа: Linux 2.6.x уже обогнал ФриБСД в большинстве тестов, а Linux 2.4.x все же уступает ...

NickNick

А я вот слышал что FreeBSD уже догнал Linux 2.2.x но еще уступает 2.4.x

irinkina

Начиная с 2,2,x вообше-то...

janlynn

у меня в инструкции к мамке написано, что с 2.4.х

sergey_m

Мне понравился этот тред ни о чем. Наверное каждый пишущий имел что-то своё под словами "ведёт на SMP машинах".

eee1

ты правильно заметил. На самом деле, писать "на SMP машинах" не есть ошибка

KAPUSTA

Наверное каждый пишущий имел что-то своё под словами "ведёт на SMP машинах".

Я хотел спросить вот что - каково состояние порта SMPng в ожидаемой 5.3. На сколько он стабиен.
На сколько ядро FreeBSD tread-safe... На фициальной страничке SMPng для FreeBSD как-то мне показалось
маловато переделанных драйверов... Наступал ли кто-нибудь реально на грабли c FreeBSD на SMP системах...
Ну и конечно - очень интересны результаты тестов производительности Linux/FreeBSD/Win2K/Win2K3...

sergey_m

Я хотел спросить вот что - каково состояние порта SMPng в ожидаемой 5.3. На сколько он стабиен.
На сколько ядро FreeBSD tread-safe... На фициальной страничке SMPng для FreeBSD как-то мне показалось
маловато переделанных драйверов...
Закончена SMPngфикация сетевого стека и VM. Всё это сейчас в очень сыром виде. MPSAFE большинство широкоиспользуемых современных драйверов.
На сколько ядро FreeBSD tread-safe...
Не совсем корректный вопрос, имхо. Что ты имел в виду?
Наступал ли кто-нибудь реально на грабли c FreeBSD на SMP системах...
Наступают каждый день, см. архивы .
Ну и конечно - очень интересны результаты тестов производительности Linux/FreeBSD/Win2K/Win2K3...
Тестов чего? Если ты будешь тестировать одновременную работу 10 приложений, то это будет тест на лучший скедулер, SMPng тут почти не задействовано.

Marinavo_0507

Можно какую-нибудь правильную ссылку, что такое SMPng?

sergey_m

Изначально SMP было превнесено в FreeBSD с помощью распарраллеливания userland процессов по множеству процессоров, а инварианты в ядре защищались с помощью Giant lock. Это фактически означает что ядро почти не выполняется на нескольких процессорах. SMPng это избавление от Giant в пользу более маленьких мьютексов.

Marinavo_0507

> Если ты будешь тестировать одновременную работу 10 приложений, то это будет тест на лучший скедулер, SMPng тут почти не задействовано.
Уважающие себя (системные) приложения большую часть времени проводят внутри системных вызовов.
Вот ими и тестировать.

P.S. результат известен заранее - победит любимая система тестировщиков

sergey_m

Уважающие себя (системные) приложения большую часть времени проводят внутри системных вызовов.
Интересно, что же означает "уважающие себя"?

Marinavo_0507

ну иначе какое же это системное приложение?
расчётная задача какая-то получается

sergey_m

По-моему ни я, ни автор треда не ограничивался сугубо системными приложениями.
Кстати байес антиспам фильтр это не уважающее себя приложение или не системное? Основные CPU затраты - статистические вычисления.

Marinavo_0507

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

eee1

Все тесты/бенчмарки говны

KAPUSTA

На сколько ядро FreeBSD tread-safe...
Не совсем корректный вопрос, имхо. Что ты имел в виду?

Да, вопрос не правильный получился... Я имел в виду MPSAFE. На странице SMPng почти на всех подсистемах стоит In progress...
Тестов чего? Если ты будешь тестировать одновременную работу 10 приложений, то это будет тест на лучший скедулер,
SMPng тут почти не задействовано.

Вобщем-то, меня интересует вот какой вопрос - есть некоторое количество двухпроцессорных серверов с hyperthreading'ом под
решение стандартных задач (файлсерверы, DNS с динмическими апдейтами, база данных и т.п.). Linux почему-то ставить не хочется, а во
FreeBSD с поддержкой SMP как-то не очень, по-моему... Наверное все-таки придется ставить Linux...

SvinkaVJeansah

Уважающие себя (системные) приложения большую часть времени проводят внутри системных вызовов.
Вот ими и тестировать.

Тестируй хоть жопой. Единственный способ объхективно тестировать - ориентироваться на риалтайм ос/приложения. Хочешь - тестируй. Вообще - все ебаные тесты ограничиваются сферой применения, и ИМХО - самые универсальные - .реалтайм ос, которые хоть одну задачу, но могут выполнить в срок %)

hoha32

Зашёл на linux.org - про SMP вапще ничего не нашёл. Плохо искал, походу.
На freebsd.org смутило то, что статус некоторых проектов минимум год как не обновляется, и тем не менее из бзди 5.3 исчезли комменты типа [MPSAFE] при загрузке - в 5.2 были. В конфигурационном файле серым по чёрному написано, как расшевелить HTT в связке с MP - видать, работает. О глюках там не написано.

Ivan8209

> Зашёл на linux.org
kernel.org?
---
...Я работаю антинаучным аферистом...

hoha32

Неочевидно

Ivan8209

Демонопоклонникам простительно.
Но будь осторожен при встрече с ярыми тотемистами.
---
...Я работаю антинаучным аферистом...

hoha32

Каких времён на этом сайте FAQ?
Или "ядро версии 2.0" это не есть ветка 2.0.х ?

Ivan8209

Не знаю.
Знаю, что SMP появился не так давно.
Наверное, в 2.4.
---
...Я работаю антинаучным аферистом...

hoha32

Ну тады я не знаю, как это понимать.

hoha32

И шо мне это должно было рассказать?
Только то, что на линухе это работало еще в 1996 году?

irinkina

А точнее
http://doc.trecom.tomsk.su/citforum.ru/win/operating_systems/linuxway/gl3.shtml
Цитата:
Начиная с версий ядра 2.1.39 в линуксе появилаcь
поддержка SMP для нескольких популярных чипсетов

irinkina

2.1.39 ушло в релиз согласно http://www.kernel.org/pub/linux/kernel/v2.1/
18-May-1997 11:14

hoha32

А как же тогда 96й год?

irinkina

Ты представляешь как разрабатывается очередная версия ядра ?
Вначале фичи ввиде патчей могут годами и месяцами ходить во внутренней рассылке и тестироваться все это время, потом все договариваются когда же вставляем, потом идет alpha (сейчас отменили потом pre, и лишь потом релиз.
18-May-1997 11:14 - это дата, когда Линух официально стал поддерживать SMP.
И то что, между первыми задумками, патчами и т.д и реализацией прошло такое время-это нормально...

hoha32

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

irinkina

К сожалению я не могу найти архивов рассылки kernela ранее 1997 года.
Так что ни отровергнуть, ни подтвердить не могу...

irinkina

Google рулит.
http://www.linux.org.uk/SMP/title.html
Цитата
Current Status
Linux 2.0 includes basic SMP support for Intel and Sun hardware. The only configuration I know is not supported is 486SX processors. This causes all sorts of awkward scheduling problems with floating point its better not to support it. Apart from that we should support all compliant boards. If not then report the problem and we'll try and get it fixed. As far as is known only one old IBM dual 486SLC board exists that is affected by this issue.
Соответсвенно
ntel MultiProcessor Specification v1.1
Virtual Wire compatibility mode.
OEM ID: ASUSTEK1 Product ID: P54NIP400000 APIC at: 0xFEE00000
Processor Pentium(tm) APIC version 17
Processor Pentium(tm) APIC version 17
I/O APIC Version 17 at 0xFEC00000.
Processors: 2
Console: 16 point font, 400 scans
Console: colour VGA+ 80x25, 1 virtual console (max 63)
pcibios_init : BIOS32 Service Directory structure at 0x000fc7c0
pcibios_init : BIOS32 Service Directory entry at 0xfcbf0
pcibios_init : PCI BIOS revision 2.00 entry at 0xfcc20
Probing PCI hardware.
PCI bridge optimization.
Cache L2: Not supported.
CPU-PCI posted write: on.
CPU-Memory posted write: on.
PCI-Memory posted write: on.
PCI burst: on.
Calibrating delay loop.. ok - 35.94 BogoMIPS
Memory: 14600k/16384k available (816k kernel code, 384k reserved, 584k data)
This processor honours the WP bit even when in supervisor mode. Good.
Swansea University Computer Society NET3.035 for Linux 2.0
NET3: Unix domain sockets 0.12 for Linux NET3.035.
G4KLX/GW4PTS AX.25 for Linux. Version 0.32 for Linux NET3.035 (Linux 2.0)
G8BPQ Encapsulation of AX.25 frames enabled
G4KLX NET/ROM for Linux. Version 0.5 for AX25.032 Linux 2.0
Swansea University Computer Society TCP/IP for NET3.034
IP Protocols: IGMP, ICMP, UDP, TCP, IPIP
Linux IP multicast router 0.05.
Checking 386/387 coupling... Ok, fpu using exception 16 error reporting.
Checking 'hlt' instruction... Ok.
Linux version 2.0.0 (roadrunner.swansea.linux.org.uk) (gcc version 2.7.2) #12- Fri Jun 28 23:30:01 BST 1996
Booting processor 1 stack 00002000: Calibrating delay loop.. ok - 36.04 BogoMIPS
Total of 2 processors activated (71.99 BogoMIPS).
Serial driver version 4.13 with no serial options enabled
tty00 at 0x03f8 (irq = 4) is a 16450
tty01 at 0x02f8 (irq = 3) is a 16450
Real Time Clock Driver v1.07
Sound initialization started
<SoundBlaster 16 4.12> at 0x260 irq 7 dma 1,7
<SoundBlaster 16 4.12> at 0x260 irq 7 dma 1,7
<Yamaha OPL3 FM> at 0x388
Sound initialization complete
hda: WDC AC2850F, 814MB w/64kB Cache, LBA, CHS=827/32/63
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Floppy drive(s): fd0 is 1.44M
Started kswapd v 1.4.2.2
FDC 0 is a post-1991 82077
sbpcd-0 [01]: sbpcd.c v4.4 Eberhard Moenkeberg >gwdg.de<
sbpcd-0 [02]: Scanning 0x270 (SoundBlaster)...
sbpcd-0 [03]: Drive 0 (ID=0): CR-562 (0.81) at 0x270 (type 1)
TMC-8XX/TMC-950 options: ARBITRATE SLOW_HANDSHAKE FAST32
scsi0 : TMC-8XX/TMC-950 at irq 5, address 0xCA000
scsi : 1 host.
scsi : detected total.
tunnel: version v0.2b2
ne.c:v1.10 9/23/94 Donald Becker (cesdis.gsfc.nasa.gov)
NE*000 ethercard probe at 0x300: 90 07 19 13 48 34
eth0: NE1000 found at 0x300, using IRQ 9.
Partition check:
hda: hda1 hda2
VFS: Mounted root (ext2 filesystem) readonly.
И смотрим http://www.kernel.org/pub/linux/kernel/v2.0/
08-Jun-1996 17:00
Первое появление SMP в Linux.

hoha32

Официально во freebsd поддержка smp есть с февраля 1999 года (3.0-STABLE)
неофициально - хз пока

hoha32

Вот что-то похожее на неофициальное: web-page

irinkina

Очень понравились комменты
# April 27, 1997:
* 'make world' of 3.0-current now works again.
* LKMs for SMP kernels might not always work.
* The SMP specific code tree is now frozen and "for reference only".
# April 26, 1997:
* ******* SMP merged into 3.0-current ********
# SMP kernel builds from /usr/src/sys work.
# 'make world' currently broken (we're working on it).

psihodog

Закончена SMPngфикация сетевого стека и VM. Всё это сейчас в очень сыром виде.
Вот, вроде обещают 5.3 уже в октябре. А насколько стабильной она будет? Вроде как должна быть (иначе нафиг она нужна? но судя по твоим словам и freebsd.org там ещё много чего сырого. Успеют ли?

hoha32

Ну дык это ветка CURRENT, лёгкой жизни никто и не обещал

sergey_m

Да, вопрос не правильный получился... Я имел в виду MPSAFE. На странице SMPng почти на всех подсистемах стоит In progress...
Я бы сказал in testing.
Вобщем-то, меня интересует вот какой вопрос - есть некоторое количество двухпроцессорных серверов с hyperthreading'ом под
решение стандартных задач (файлсерверы, DNS с динмическими апдейтами, база данных и т.п.). Linux почему-то ставить не хочется, а во
FreeBSD с поддержкой SMP как-то не очень, по-моему... Наверное все-таки придется ставить Linux...
Если у вас такая серьезная контора с запросами на производительность, то нужно просто потратить неделю-две и провести тестирования на своих собственных задачах.

sergey_m

Вот, вроде обещают 5.3 уже в октябре. А насколько стабильной она будет? Вроде как должна быть (иначе нафиг она нужна? но судя по твоим словам и freebsd.org там ещё много чего сырого. Успеют ли?
Она будет существенно менее стабильной чем 4.10. Думаю, её стабильность можно сравнить с 4.0. А ведь 4.0 люди ставили и использовали. У меня 5.3 работает на production задачах без проблем, и у множества людей тоже. Однако есть ряд известных проблем.

sergey_m

* LKMs for SMP kernels might not always work.
Пожалуйста найди какую нибудь цитату о 4.2BSD 1990 года и выдели её красным цветом. Мы все вместе посмеемся.
'make world' currently broken (we're working on it).
Тебе смешно только от твоей безграмотности. make world broken в CURRENT ветке это совершенно нормальное явление. Подозреваю, что в Linux 2.7 make kernel тоже регулярно broken.

mirt1971

Кстати насчет безграмотности: linux 2.7? Как интересно. Когда успели?

sergey_m

Если уже выпущен 2.6, то вполне логично предположить, что девелопмент ветка сейчас зовется 2.7. Разве я не прав?

krishtaf

вот если память не подводит по поводу 2.7 были трения - нужно или пока не нужно.
Вот на чем сошлись - не знаю

mirt1971

Нет Пока решили не открывать новую ветку, так как нету патчей, значительно меняющих ядро. А kernel hackers пока вполне удовлетворяет существующая инфраструктура.

sergey_m

И чо новьё коммитят прямо в ту ветку, с которой будет срезан следующий 2.6.x релиз?

mirt1971

Сейчас делают так: новые патчи обкатываю в ветке -mm, а затем бэкпортят их в основную ветку. Ну поторопились с выпуском 2.6, что тут сказать

Marinavo_0507

нифига не поторопились
наоборот, у меня гораздо лучшие впечатления, чем о ранних 2.2 и 2.4

mirt1971

Ты 2.6.0 видел? Видимо нет. Может оно в kernel panic и не валилось у меня, но проблемы с производительностью были просто ахуительными. А если еще и preemption включить...

sergey_m

Спасибо, ясно. Собственно я имел в виду -mm ветку.

Marinavo_0507

Ты наверное не очень хорошо понимаешь, зачем и когда выпускают релизы.
Это происходит вовсе не тогда, когда код становится совершенным.
Вот хотя бы из LKML FAQ:
What is a production kernel?
* (ADB) Production or stable kernels have a well defined feature set, a low number of known bugs, and tried and proven drivers. They are released less frequently than the experimental kernels, but even so some "vintages" are considered better than others. GNU/Linux distributions are usually based on chosen stable kernel versions, not necessarily the latest production version.

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

irinkina

Мне еще больше смешно из-за отсутсвия у тебя чувства юмора.

irinkina

Кстати, давно хотел спросить, как ты прокомментируешь вот этот проект
http://fxr.watson.org/fxr/source/

irinkina

Подтверждаю, что 2,6 ветка более "стабильно" ведется, чем 2,2 и 2,4.
Вначале 2,2, вообще приходилось ждать десяток Алановских патчей пока можно было переходить на очередную версию...

sergey_m

Эту ссылку уже кто-то приводил в этом разделе. Интересно, полезно.
Оставить комментарий
Имя или ник:
Комментарий: