LINUX.ORG.RU

Во FreeBSD появился «упреждающий» дисковый планировщик

 , ,


0

0

Luigi Rizzo предлагает пользователям FreeBSD 7-STABLE протестировать новую инфраструктуру для реализации внешних планировщиков ввода-вывода дисковой подсистемы, построенную на базе системы GEOM.

В качестве демонстрации возможностей системы, представлен планировщик, реализующий алгоритм "anticipatory scheduling". С целью уменьшения перемещений головок по диску планировщик пытается упорядочить поступающие запросы для более последовательного обращения к диску, вводя небольшую дополнительную задержку (2..5мс) перед фактической отправкой запроса и объединяя поступившие за это время новые запросы с ожидающими в очереди.

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

Взято с opennet.ru

>>> Подробности

★★★★★

Проверено: Shaman007 ()

Ответ на: комментарий от Sun-ch

> Можно вынести этот ZIL на отдельные тома с очень быстрыми дисками, но в фрибсд этого вроде еще нет.

Эмм... Ну, про это я вроде слышал. Но ФС, требующая для обеспечения нормальной производительности вынос лога на отдельный физический носитель - это какой-то запредельный Ынтерпрайз. Сдаётся мне, что парням стоит дольше поработать над оптимизацией.

anonymous
()
Ответ на: комментарий от Sun-ch

> А гжурнал? Разве там нельзя вынести сам журнал на очень быстрые диски?

Журнал на отдельное устройство можно вынести хоть в рейзере. Только в нормальных ФС эта фича опциональна, а в ZFS если тебе верить - обязательна.

anonymous
()
Ответ на: комментарий от Sun-ch

Санчо, данные в журнале (в силу специфики самого журнала) пишутся последовательно, пакетами, т.е. с максимальной для накопителя линейной скоростью. А вот после записи в журнал следует уже нелинейная запись по назначению. Так что журнал это далеко не самое слабое звено.

anonymous
()
Ответ на: комментарий от Sun-ch

> Можно вынести этот ZIL на отдельные тома с очень быстрыми дисками, но в фрибсд этого вроде еще нет.

в 8-CURRENT есть со времен коммита 13-версии, как и l2 arc.
# zpool create pool da0 da1 log da3
# zpool create pool da0 da1 cache da2 da3 (статистику можно глянуть в kstat.zfs.misc.arcstats.l2_*)

anonymous
()
Ответ на: комментарий от anonymous

> Наблюдалось лично мной на 7.1R, 7S и 8С каждый раз, когда интенсивность работы с диском переваливает за какой-то порог.

8C - это какая svn-ревизия? Хотя бы какой месяц?

Попробуй потюнить
vfs.zfs.vdev.min_pending
vfs.zfs.vdev.max_pending
vfs.zfs.txg.timeout
и прочие в vfs.zfs.*

anonymous
()
Ответ на: комментарий от anonymous

>Но iZEN-то говорит о FreeBSD. И, судя по его рассказам, во фряхе всё шоколадно с zfs.

Где я говорил, что "ВСЁ шоколадно"?

iZEN ★★★★★
()
Ответ на: комментарий от iZEN

как я понимаю - фря и линукс становятся взаимо-проникающими системами
то , что появляется в одной системе , потом вылезает в другой

kto_tama ★★★★★
()
Ответ на: комментарий от kto_tama

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

Ядро Linux'а для ZFS закрыто из-за существенного недостатка лицензии GPL: она не принимает код под другими лицензиями. Так что "вылезти" ZFS может только вне ядра, например, через FUSE.

Исходники некоторых драйверов с непротиворечивыми лицензиями, безусловно, переписываются как для Linux, так и для FreeBSD. Не так давно (год ил два назад) линуксойды взяли и переписали драйвер из *BSD, подменив лицензию BSDL на GPL. Из-за это вышел даже небольшой скандальчик-перепалка между разработчиками из-за моральных принципов такого действия.

iZEN ★★★★★
()
Ответ на: комментарий от iZEN

>> из-за существенного недостатка лицензии GPL: она не принимает код под другими лицензиями.

Неверно. GPL допускает применение кода под совместимой с GPL лицензией. Лицензия на ZFS с GPL несовместима. Поскольку она создавалась конкретно под опенсолярку. намного позже самой GPL, думается это (несовместимость) было допущено намеренно, дабы ненароком не стать контрибуторами линукса (тогда бы солярке точно трындец).

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

Ага. Из-за вайфайного драйвера. Главное юридически всё ок, но истерику закатили грандиознейшую. Поражает упёртость и непримиримая ненависть к миру GPL. Ненависть, выражающаяся в том, что раздавая код направо и налево пропиетарщикам, закатывают истерики, если хоть строчка окажется в ГНУ. А упёртость в том, что продолжают пользоваться неподходящей лицензией, каждый раз выдумывая юридически ничтожные отговорки, вместо того, чтобы применить подходящую. Хотя бы ту же солнцевскую.

frost_ii ★★★★★
()
Ответ на: комментарий от frost_ii

И самое глупое и противное в том, что некоторые бздуны пытаются извратить смысл лицензии BSD, наделяя её свойствами, которых у неё нет, и уничтожая замысел, с которым эти академически лицензии создавались. Если им это удастся, лицензию BSD прийдётся изобретать заново, но на этот раз с "защитой от дурака".

frost_ii ★★★★★
()
Ответ на: комментарий от devl547

>JFS+2.6.26-rt9 никаких проблем с этим >Reiser4-gzip1+Zen-2.6.29-чтототам, то же самое. ЧЯДНТ?

не мерялись bonnie.

anonymous
()

«Since 2.6.26/27 everyone should be affected by this issue…
…copy a file from a compactflash card through usb adaptor or pcmcia card. The
computer is not usable until the copy of the file (3 to 5 megas) is finish»

Новый анекдот:
— Папа, а правда что Линукс — многозадачная система?
— Да, сынок, сейчас покажу. Только файлик докопируется…

baka-kun ★★★★★
()
Ответ на: комментарий от frost_ii

> Главное юридически всё ок, но истерику закатили грандиознейшую.

Юридически всю было совсем не ОК. ISC нигде в своём тексте не позволяет смены лицензии на ког третьими лицами.

> раздавая код направо и налево пропиетарщикам, закатывают истерики, если хоть строчка окажется в ГНУ

Используйте, никто не запрещает, «только не говорите, что сами написали». Код под BSD-like можно без всяких ограничений линковать с кодом под GPL, но сменить его лицензию законными средствами может только автор.

> Лицензия на ZFS с GPL несовместима.

Скорее наоборот: со стороны CDDL нет никаких запретов на объединение в одном проекте с файлами под /любой/ лицензией. Действие CDDL ограничено пределами файла, в котором она написана, на содержимое соседних ей глубоко плевать.

> думается это (несовместимость) было допущено намеренно

Естественно, несовместимость GPL с любой другой copyleft лицензией была придумана сознательно. Она даже сама с собой несовместима: GPLv2 ни под каким соусом не может линковаться с GPLv3.

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

> Естественно, несовместимость GPL с любой другой copyleft лицензией была придумана сознательно. Она даже сама с собой несовместима: GPLv2 ни под каким соусом не может линковаться с GPLv3.

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

CDDL создавалась позже GPL, и несовместимость CDDL с GPL - это наверняка было одним из главных требований, поставленных перед разработчиками лицензии. Если бы они хотели обеспечить совместимость, они могли бы сделать так, как сделано в LGPL - просто разрешить смену лицензии на GPL. Но этого ведь не было сделано. И понятно почему - им была невыгодна совместимость с GPL. С одной стороны код открыт, но с другой - он бесполезен для большинства свободных проектов. То есть с одной стороны вроде приверженцы opensource, а с другой - избежали использования кода основным свободным конкурентом...

askh ★★★★
()
Ответ на: комментарий от frost_ii

>раздавая код направо и налево пропиетарщикам, закатывают истерики, если хоть строчка окажется в ГНУ.

А пропиетарщики, например Микрософт, лицензию не нарущают и сохраняют все копирайты с особой тщательностью.

Sun-ch
()
Ответ на: комментарий от baka-kun

> Since 2.6.26/27 everyone should be affected by this issue… …copy a file from a compactflash card through usb adaptor or pcmcia card. The computer is not usable until the copy of the file (3 to 5 megas) is finish

Ссылкой на описание проблемы не поделишься? А то гугл выдает только ссылку на твой постинг :D

tailgunner ★★★★★
()
Ответ на: комментарий от iZEN

> Ext3 не может быть использована на SSD
это почему? ext2 например используется в рутерах во флэшках уже больше 5 лет.

mumpster ★★★★★
()
Ответ на: комментарий от anonymous

> во многих компах есть ISA
везде где есть комп-порт лпт или ps/2 kbd/mouse

mumpster ★★★★★
()
Ответ на: комментарий от iZEN

> UFS2: адресует...не до конца заполненный блок часть другого файла
окстись, ламер!
какой ufs2!?
они были ещё в простой ufs(ffs) и про них пишет Лукидис в своей книге про настройку BSD о 1990г.- допись в хвосты - это изначальная возможность (feature) FFS.
ISBN могу сказать;)
0-937175-60-9

mumpster ★★★★★
()
Ответ на: комментарий от mumpster

>> Ext3 не может быть использована на SSD
> это почему? ext2 например используется в рутерах во флэшках уже больше 5 лет.


Сравнил SSD, на который чуть ли не каждые десятки миллисекунд скидываются мегабайты данных, с флэшками в роутерах, которые перезаписываются раз в полгода/год ради изменения настроек. :))

iZEN ★★★★★
()
Ответ на: комментарий от mumpster

>> UFS2: адресует...не до конца заполненный блок часть другого файла
> окстись, ламер!

> какой ufs2!?

> они были ещё в простой ufs(ffs) и про них пишет Лукидис в своей книге про настройку BSD о 1990г.- допись в хвосты - это изначальная возможность (feature) FFS.


От меня ускользает направленность твоей мысли. Это была твоя первая книжка по файловым системам, и что ты не признаёшь больше ни одну реализацию современных версий ФС?
Что, нужно вернуться к истокам и начать использовать древнюю 32-битную UFS1 вместо 64-битной современной UFS2? :))

iZEN ★★★★★
()
Ответ на: комментарий от askh

>CDDL создавалась позже GPL, и несовместимость CDDL с GPL - это наверняка было одним из главных требований, поставленных перед разработчиками лицензии.
>С одной стороны код открыт, но с другой - он бесполезен для большинства свободных проектов. То есть с одной стороны вроде приверженцы opensource, а с другой - избежали использования кода основным свободным конкурентом...


Пи..здец, вывод...

Ты сам-то условия лицензии CDDL прочёл? Или кто тебе наушко напел?

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

Главное условие лицензии CDDL в этом случае: если взял исходник под этой лицензией и начинаешь его менять, то выпускай изменённый исходник под той же самой лицензией, а свои исходники и готовый продукт можешь выпускать под какой угодно лицензией.

В исходниках ядра Linux невозможно поддерживать код с отличной от GPL лицензией.

Главное условие лицензии GPL на статически слинкованный код: используя сторонние исходники под этой лицензией в своём программном продукте автор должен выпустить свои исходники и готовый продукт тоже под этой лицензией, даже если он не поменял ни строчки кода в сторонних исходниках!

iZEN ★★★★★
()
Ответ на: комментарий от askh

> Может, если автор программы этого не запретил, точнее не запретил предлагаемого по умолчанию разрешения на смену лицензии на более новую GPL

В моём тексте где-то написано «GPLv2 или выше»? Я сказал: GPLv2 несовместима с GPLv3. Точка.

Разумный человек, вроде Линуса, напишет GPL с указанием конкретной версии, поскольку он не знает, что приспичит неконтролируемой им FSF через несколько лет в версии GLPvX.

> наиболее распространённой из свободных является именно GPL

То есть из GPL и LGPL? Возможно, не буду спорить.

> "Несовместимость" - означает, что нельзя убирать ограничения лицензии, и нельзя добавлять новых

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

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

А CDDL направлена на то, чтобы сохранить открытость оригинального кода и всех его модификаций. Никаких ограничений на чужой код она не накладывает, в отличии от GPL.

> вроде приверженцы opensource, а с другой - избежали использования кода основным свободным конкурентом...

Заметь, это только для вас, «освободителей», все остальные — конкуренты. А для OSS мира все — братья, даже «освободители кода».

baka-kun ★★★★★
()
Ответ на: комментарий от tailgunner

> Ссылкой на описание проблемы не поделишься? А то гугл выдает только ссылку на твой постинг :D

В этой теме чуть раньше уже упоминали bug 12309. Сходи на багзиллу.

baka-kun ★★★★★
()
Ответ на: комментарий от baka-kun

> В моём тексте где-то написано «GPLv2 или выше»? Я сказал: GPLv2 несовместима с GPLv3. Точка.

> Разумный человек, вроде Линуса, напишет GPL с указанием конкретной версии, поскольку он не знает, что приспичит неконтролируемой им FSF через несколько лет в версии GLPvX.

Читай пункт 9 GPL. Вот (в переводе, взято с http://www.infolex.narod.ru/gpl_gnu/gplrus.html):

> 9. Free Software Foundation может публиковать исправленные и/или новые версии настоящей Стандартной Общественной Лицензии. Такие версии могут быть дополнены различными нормами, регулирующими правоотношения, которые возникли после опубликования предыдущих версий, однако в них будут сохранены основные принципы, закрепленные в настоящей версии.

В лицензии FSF берёт на себя обязательства не менять лицензию произвольным образом. Необходимость возможности корректировки лицензии нужна, поскольку например законодательство меняется. Собственно GPL 3 является примером того, зачем нужна возможность менять лицензию.

> Никто не может изменять условия чужой лицензии. «Несовместимость» с точки зрения GPL означает, что другая лицензия содержит более строгие условия. GPL может линковаться только с более открытым кодом, с кодом под менее строгой лицензией, и никак иначе.

Я примерно про это и говорил. А отсюда следует, что если лицензия несовместима с GPL, значит она в чём-то менее свободна, соответственно от тех, кто критикует GPL за "недостаточную свободность" логично ожидать и критики той лицензии - за её дополнительные ограничения...

> А CDDL направлена на то, чтобы сохранить открытость оригинального кода и всех его модификаций. Никаких ограничений на чужой код она не накладывает, в отличии от GPL.

Разве это сильно отличается от LGPL или, к примеру, MPL? Зачем плодить сущности^W лицензии без необходимости? Если только пытаться по возможности изолировать свой код от другого свободного кода - если бы код был выпущен под LGPL, то он мог быть использован в Linux. А так - нельзя.

> Заметь, это только для вас, «освободителей», все остальные — конкуренты. А для OSS мира все — братья, даже «освободители кода».

Sun - коммерческая компания. Её задача - получение прибыли, а не идеи свободного софта, которые для них не более, чем средство. Когда они окажутся им невыгодны, они их легко отбросят.

askh ★★★★
()
Ответ на: комментарий от askh

> Разве это сильно отличается от LGPL или, к примеру, MPL?

> ...если бы код был выпущен под LGPL, то он мог быть использован в Linux. А так - нельзя.

Бред какой-то. Первая фраза указывает на малое отличие CDDL от LGPL, вторая утверждает, что с LGPL линковаться можно, а с CDDL - нельзя. Кто-нибудь может внятно объяснить, какое именно положение CDDL конфликтует с GPL?

anonymous
()
Ответ на: комментарий от askh

> В лицензии FSF берёт на себя обязательства не менять лицензию произвольным образом

Я /не знаю/ и не могу знать, что они изменять завтра, но текущая версия, допустим, подходит. Если бы мне было настолько плевать на изменение условий распространения в будущем, я лично отдал бы в public domain. Сейчас есть люди, которых не устраивает GPLv3, зато полностью подходит GPLv2.

> А отсюда следует, что если лицензия несовместима с GPL, значит она в чём-то менее свободна

Отсюда ничего не следует, не совершай логической ошибки: GPL можно линковать только с менее строгими лицензиями, но не любой из них. MPL, например, однозначно более открытая, передаёт больше прав. Но «несовместима» потому, что запрещает накладывать дополнительные ограничения к существующим в ней. Аналогичная картина CDDL, основанной на MPL, только она дополнительно ещё и о патентах упоминает.

> Разве это сильно отличается от LGPL или, к примеру, MPL?

От MPL не сильно, а от LGPL кардинально: действие MPL (и CDDL) ограничено пределами /файла с исходным текстом/, а распространять бинарники можно под любыми условиями, если доступны оригинальные или модифицированные CDDL-исходники.

> Sun - коммерческая компания. Её задача - получение прибыли

Redhat — коммерческая компания. Дело не в этом, просто большинство «освободителей» считают всех за пределами своего мирка конкурентами, а то и врагами.

baka-kun ★★★★★
()
Ответ на: комментарий от anonymous

> Кто-нибудь может внятно объяснить, какое именно положение CDDL конфликтует с GPL?

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

baka-kun ★★★★★
()
Ответ на: комментарий от anonymous

> Бред какой-то. Первая фраза указывает на малое отличие CDDL от LGPL, вторая утверждает, что с LGPL линковаться можно, а с CDDL - нельзя.

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

askh ★★★★
()

нихххррена в логах ни наметил...

flat
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.