В ядро Linux версии 3.9 включена (http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.g...) доработанная версия алгоритма LZO, представленная (https://github.com/markus-oberhumer/linux/commit/8b975bd3f90...) Маркусом Оберхаммером (Markus Oberhumer), автором LZO (Lempel-Ziv-Oberhumer), в своем git-репозитории дерева ядра Linux на GitHub. В результате данного изменения на современных машинах ожидается довольно существенный рост производительности алгоритма сжатия LZO встроенного в ядро Linux 3.9.
Некоторые синтетические тесты производительности (взято из pull request): На x86_64 (Sandy Bridge), gcc-4.6 -O3, Silesia test corpus, блок 256 kB:
- LZO-2005 : 150 MB/sec сжатие, 468 MB/sec распаковка;
- LZO-2012 : 434 MB/sec сжатие, 1210 MB/sec распаковка;
На i386 (Sandy Bridge), gcc-4.6 -O3, Silesia test corpus, блок 256 kB:
- LZO-2005 : 143 MB/sec сжатие, 409 MB/sec распаковка;
- LZO-2012 : 372 MB/sec сжатие, 1121 MB/sec распаковка;
На armv7 (Cortex-A9), Linaro gcc-4.6 -O3, Silesia test corpus, блок 256 kB:
- LZO-2005 : 27 MB/sec сжатие, 84 MB/sec распаковка;
- LZO-2012 : 44 MB/sec сжатие, 117 MB/sec распаковка;
- LZO-2013-UA : 47 MB/sec сжатие, 167 MB/sec (**) распаковка.где, LZO-2005 - версия алгоритма LZO в ядре 3.8, базирующаяся на библиотеке LZO 2.02 (выпущена в 2005 году). LZO-2012 - обновленная версия алгоритма LZO из ветки linux-next. LZO-2013-UA - обновленная версия алгоритма LZO из ветки linux-next с экспериментальным патчем для невыровненного доступа на архитектуре ARM. Данный патч требует подтверждения от мэйнтейнеров архитектуры ARM и пока не включен.
Кроме того, известный разработчик ядра Эндрю Мортон (Andrew Morton) отметил что хотя есть алгоритм LZ4, который работает еще быстрее чем ускоренная версия LZO, существующие файловые системы и прочие подсистемы используют LZO и поэтому существенно выиграют от данного обновления.URL: http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.g...
Новость: http://www.opennet.me/opennews/art.shtml?num=36278
где взять ядро на SuSE/openSUSE ?
На kernel.org?
кроме ядра, у каждого дистра свой набор патчей уже включен
это ещё одна причина, по которой я до сих пор на арче.
> это ещё одна причина, по которой я до сих пор на арче.А что, арчеводы настолько рисковые парни что положили в репу ядро для которого даже -RC1 еще не выкатили? :)
Нет, у арчеводов ванильные ядра.
> Нет, у арчеводов ванильные ядра.Тогда чем они лучше остальных в контексте текущей новости? Или у каких дистров и какие патчи кому-то мешают жить? Ну или к чему арч был упомянут?
> кроме ядра, у каждого дистра свой набор патчей уже включенСей товарищ, не хочет тра**ться с дистро-специфик патчами и гитовским ядром, посему ищет готовую сборку. Я у себя наберу одну строчку "makepkg", и без всяких дистропатчей загружусь на новом ядре, без всякого отвалившегося функционала, зависящего от патчей. Вкурил?
Gentoo?
> Gentoo?Каждый кулик свое болото хвалит. Знаем-знаем.
> Сей товарищ, не хочет тра**ться с дистро-специфик патчамиОбычно они не столь уж критичны - если вломак, можно и не накладывать. Будет ли от этого хуже и чем - от патчей зависит.
> Вкурил?
Угу, похоже на какие-то попытки понтануться непойми чем.
> Угу, похоже на какие-то попытки понтануться непойми чем.Да что ж тут не понимать -- ваниллой. Надеюсь, человек в курсе, что на kernel.org за стабильными ядрами пользователей отправляют в дистрибутивы и чем дистрибутивное ядро отличается от сконфигуренного и упакованного ванильного (одна сторона вопроса отчасти освещена, вторая оставлена в тени, а между тем в разных ситуациях важнее оказываются разные).
Ну я ради интереса посмотрел что в патчи кладут некоторые дистры. И если честно - я как-то не встречал патчей, цель которых была бы что-нибудь ухучшить, а вот наоборот - бывало :). Поэтому IMHO большой вопрос, является ли отсутствие дистровых патчей достоинством. ИМХО это скорее индикатор того что у дистрибутива нет своих ядерщиков.
> ИМХО это скорее индикатор того что у дистрибутива нет своих ядерщиков.Или они работают в ваниллу.
Там есть лтс, там есть тестирование и гораздо больший коллектив специалистов.
(Ну не верю я что в застенках дистра патчи проходят более жёсткий отбор, чем в ваниллу. За исключением шапки. Но и она к концу жизненного цикла дистра могидьником попахивает)
> Или они работают в ваниллу.Работать напрямую в ванилу из дистра довольно сложно. Особенно роллингу. У ваниллы как бы есть свои тайминги и регламент, которые удобны тамошним разработчикам, но совершенно не обязаны быть удобны дистрибутивам и их пользователям. Ну то-есть идея пихать ваниллу напрямую "в лоб" имеет право на жизнь, но является ли это самым оптимальным вариантом - большой такой вопрос.
> Там есть лтс, там есть тестирование и гораздо больший коллектив специалистов.
Как бы дистрибутивные патчи относительно небольшие и потому не нуждаются в том же объеме тестов что и весь кернел. Половина результатов тестирования кернела остается валидна и после патчинга.
> (Ну не верю я что в застенках дистра патчи проходят более жёсткий
> отбор, чем в ваниллу. За исключением шапки. Но и она к
> концу жизненного цикла дистра могидьником попахивает)Да в общем то все "LTS" дистрибутивы к концу жизненного цикла больше напоминают логово некромана. Некоторым тем не менее, некромансия даже нравится (серебряных пуль на них нет!).
> Работать напрямую в ванилу из дистра довольно сложно. Особенно роллингу.Тут есть и другой момент -- в дистрибутивах обычно происходит практическая обкатка out-of-tree patches, которые по результатам могут попасть в mainline легче. Мы так помогали отзывами (и немножко кодом) по zramswap/compcache и swap-over-net, они очень пригодились для ALTSP.
> Тут есть и другой момент -- в дистрибутивах обычно происходит практическая обкаткаНу так это нормально когда некто обкатает что-то и попробует затолкать в ваниллу. Но у ваниллы тайминги и регламент, вот так влобовую им что-то зафутболить по желанию левой пятки, в произвольный момент - сложновато. Кроме случаев когда это суперкритичные фиксы. А от дистра требуется нормально работать здесь и сейчас. Юзерам то не объяснишь что у ваниллы тайминг и все такое. Ну вот по нормальному дистростроители - этакий буфер, стыкующий эти моменты.
> Работать напрямую в ванилу из дистра довольно сложно. Особенно роллингу.Поэтому все ролинг релизы и используют в основном ваниллу.
Вон в генте к примеру только кондекор накладывают (и это единственное что НЕ работает с системд. Всё остальное работает. Можно держать и опенрк, и системд. Но это уже отдельный разговор)Зыж
Не, попасть в ваниллу тяжело, но можно.
При наборе определённого авторитета никаких проблем уже не возникает.
Кстати, всё больше и больше словянских фамилий встречается в рассылках.
> Поэтому все ролинг релизы и используют в основном ваниллу.ИМХО какой-то странный вывод. Ну вон взять например транк опенврты - там почему-то патчи на ваниллу накладывают. На распоследнюю релизнутую - куча патчей. Правда сказать что там чистый роллинг - не то чтобы, но релизы бывают не так уж часто и потому немало народа пользуется именно транка, так что получается нечто типа роллинга. И кстати да, тамошние патчи обычно тоже все-таки что-то исправляют и улучшают. В майнлайн что-то когда-то попадает, но работать все-таки должно сейчас. А не когда у майнлайна наступит окно приема изменений или чего там еще.
> Вон в генте к примеру только кондекор накладывают
Патчи или накладываются, или нет. Величина бинарная. Объем оной деятельности - второй вопрос.
> Зыж
> Не, попасть в ваниллу тяжело, но можно.Попасть в ваниллу можно только в рамках вполне конкретного регламента. Вне очереди могут затолкать только какие-то просто шедевральные по серьезности фиксы. Не, если баг сносит юзеру диск под чистую или позволяет его сплойтами долбать - оно конечно да. А что-то менее лютое подождет окна приеми изменений.
> При наборе определённого авторитета никаких проблем уже не возникает.
Дело не только в авторитете, но и вполне конкретном регламенте работы граждан. Закинуть "вот прямо сейчас", "вот этот замечательный патчик" может и не получиться, в зависимости от момента времени. А ждать до очередного окна приема изменений - ну как бы обычные пользователи могут и не понять. Вот для адаптации процессов майнтайнеры и нужны. И их патчи, которые они могут накладывать "по мере надобности", "здесь и сейчас". А не когда на это регламент у кернелорга.
> Кстати, всё больше и больше словянских фамилий встречается в рассылках.
>ИМХО какой-то странный вывод. Ну вон взять например транк опенврты… так что получается нечто типа роллингани разу не роллинг.
даже не похож.
>> Вон в генте к примеру только кондекор накладывают
>Патчи или накладываются, или нет. Величина бинарная. Объем оной деятельности - второй вопрос.Неа, именно первый.
Вопрос как раз и был — а так ли уж нужны эти патчи?
Оказывается нет.
Далее поскипано, ибо сами с сабой. и на основе своих утверждений о псевдо-роллингах и переходу количества патчей в качество.
> Попасть в ваниллу можно только в рамках вполне конкретного регламента.К тому же:
https://www.kernel.org/doc/Documentation/development-process/
https://www.kernel.org/doc/Documentation/SubmittingPatches
https://www.kernel.org/doc/Documentation/SubmitChecklist> Вне очереди могут затолкать только какие-то просто шедевральные по серьезности фиксы.
И до кучи:
http://lwn.net/Articles/500443/
http://lwn.net/Articles/297529/
а это никак не влияет на работу патчеров в дистрибутиве.
местечковость даже усложняет — нужно поддерживать и согласовывать и свой регламент, и регламент ваниллы.
потому что от последнего всё-равно никуда не деться.
если работать с ваниллой, как с частью своего процесса разработки, то всё упрощается.
в конце концов самая старая longterm на kernel.org — 2.6.32.60, а это не мало
единственные плюсы вести свою ветку — это эксперимент, аля pf-/ck-/zen-/и_тд.всё что мне нужно от (бинарного) дистрибутива — это грамотно сконфигурированное и скомпилированное ядро. патченное или нет — без разницы.
и … поддержка. качественная поддержка самого дистрибутива.
>Надеюсь, человек в курсе, что на kernel.org за стабильными ядрами пользователей отправляют в дистрибутивыНу да, лтс-ядра у них там для красного словца.
Зыж
А правильно ваш оппонент говорит.
Половину накладываемых патчей в дистрах — это бэкпортированные дрова из новых версий.
(Это половина при старте дистра. С возрастом до 90% доходит)
Вторая половина — это всякие кондекор и прочие малосущественные вещи (в маргинальных случаях что-то типа хардэнед, тюксоннайс, зфсонлинух, брэйнфакшедуллер и тд по-мелочи)
Всё. Нет своих суперпупер-ноухау. Ну нету и всё.
При этом на вопрос "а нафига бэкпортировать, если можно взять целиком" ответа внятного нет.
"Откуда уверенность, что местечковое бэкпортирование качественнее ванилы? Там порой просто отрубают функционал (даже не понимая зачем он), чтобы таки сбэкпортировалось." — тоже ответа нет. "Качество и нужность не взятого в ванилу кто определяет?" — тоже тишина.
Вывод (моё имхо)— шапка может себе это позволить, её местечковой как-то не назовёшь. Но про всех остальных этого точно не скажешь.
Окстись, чувак, на дворе XXI век, никто уже от кривых патчей в kernel panic не впадает.
> kernel panic не впадает.Да кернелпаник даже в -rc1 надо сильно стараться получить. Обычно даже -rc1 вполне прилично работает. И еще большой вопрос что хуже - новые баги или те которые починили. Может так оказаться что новые баги менее кусачие чем старые. Вообще, хорошо когда разработчики у себя на десктопе свои ядра юзают - при этом наиболее очевидные факапы все-таки отловятся.
Есть там патчи, но по мелочи
Сборки 3.9 пока нет. То, что есть, можно посмотреть тут: http://software.opensuse.org/package/kernel-desktop3.9, по-видимому, появится в ближайшие дни.
> 3.9, по-видимому, появится в ближайшие дни.Ну как будет RC1 хотя-бы, так и появится смысл его хотя-бы тестировать. Вкатывать себе ядро которое собирается прямо сейчас - это как жить в доме где прямо над вашей головой пролетает очередная панель, которую как раз сейчас и будут укладывать на место.
Можно подключить также Tumbleweed репозиторий от opensuse. Там уже есть 3.8, на счет 3.8.1 - не знаю.
В данный момент есть 3.8.1 "дефолтное", а вот "десктопное" пока только 3.8.0. Завтра ситуация может уже измениться.В "Перекати поле", последнее время лёгкий бардак, наверное все силы бросили на 12.3.
> В данный момент есть 3.8.1 "дефолтное", а вот "десктопное" пока только 3.8.0.
> Завтра ситуация может уже измениться.
> В "Перекати поле", последнее время лёгкий бардак, наверное все силы бросили на
> 12.3.Слава Богу, они там подсуетились теперь и 3.8.1 в полном объёме доступно и для x86_64.
> и 3.8.1 в полном объёме доступно и для x86_64.http://packages.altlinux.org/ru/Sisyphus/srpms/kernel-image-... ;)
> http://packages.altlinux.org/ru/Sisyphus/srpms/kernel-image-...
> ;)Мишаня, ты же знаешь, что я альтом не пользуюсь.
Зачем мне "Сизифов труд"? :-)Ставил конечно АЛьТа в "Виртуальную Коробочку", года эдак два тому. Долго он в ней сидел. Я за ним ухаживал, раз в недельку запускал его и обновления накатывал. Но однажды, промозглым дождливым вечером, мой симпатяга АЛьТ, после очередного обновления, приказал долго жить. После чего был со всеми почестями удалён с винта и предан забвению в анналах истории, ибо попытки реанимации не дали результата, поциент скончался скоропостижно и без лишних мучений :-)
> Зачем мне "Сизифов труд"? :-)Не-не, это для иллюстрации было -- затем и сослался на ченжлог, а не загрузку ;-)
> свой набор патчейА он так нужен? Сколько не собирал ванильное - разницы никакой. Собери тоже, потом посмотришь и решишь подходит или нет.
> А он так нужен? Сколько не собирал ванильное - разницы никакой.Разница бывает в редких/неочевидных случаях. Если работает любое ядро -- случай хороший ;-)
> где взять ядро на SuSE/openSUSE ?Скомпилить самому разве что. Народ, на 3.9 еще даже RC не выпущен. Это изменения вливаемые в него во время окна приема коммитов. Оно будет там, однако в данный момент это еще не окончательная стабилизированная версия, а то что разрабатывается прямо сейчас.
http://en.opensuse.org/Portal:Tumbleweed
http://ru.opensuse.org/Portal:Tumbleweed
> где взять ядро на SuSE/openSUSE ?В /boot/vmlinuz.
Отлично, моё сжатие lzo на btrfs будет ещё быстрее.
> Отлично, моё сжатие lzo на btrfs будет ещё быстрее.Будет. И ряд иных ФС где сжатие LZO - выиграют. Ну и вообще, все кто юзал LZO через ядро.
В pf-kernel для 3.8 бекпортированы эти изменения.
> В pf-kernel для 3.8 бекпортированы эти изменения.Оперативно, чо.
Угу. Больно вкусное, чтобы ждать выхода 3.9.
> Больно вкусноеда в 3.9 уже вкусностей хватает, а только-только ведь 3.8 вышло ;D
> да в 3.9 уже вкусностей хватает, а только-только ведь 3.8 вышло ;DА у них с окном приема изменений забавно придумано - вы не успели отойти от порции новых фич, а там уже следующие, свеженькие.
> Угу. Больно вкусное, чтобы ждать выхода 3.9.Breaking news: -rc1 только что вышел :)
На 3.2.39 встало.Чё мужики, реально быстрее расплющивает ядро!!!
# zcat /proc/config.gz | grep LZO
CONFIG_HAVE_KERNEL_LZO=y
CONFIG_KERNEL_LZO=y
CONFIG_LZO_COMPRESS=y
CONFIG_LZO_DECOMPRESS=y# lzop --version
lzop 1.03
LZO library 2.06
Copyright (C) 1996-2010 Markus Franz Xaver Johannes Oberhumer
> На 3.2.39 встало.На такую древность? Фу, геронтофил.
>> На 3.2.39 встало.
> На такую древность? Фу, геронтофил.Некрофил, глянь в свой андроид и успокойся.
> Некрофил, глянь в свой андроид и успокойся.Посмотрел на свой N900. Да, уел, гад... :).
тоже накатил на свое ядро патчик.
# uname -a
Linux victor-laptop 3.8.2-gentoo #1 SMP PREEMPT Tue Mar 5 19:09:15 MSK 2013 x86_64 Intel(R) Core(TM) i7-3610QM CPU @ 2.30GHz GenuineIntel GNU/Linux
# lzop --version
lzop 1.03
LZO library 2.06
Copyright (C) 1996-2010 Markus Franz Xaver Johannes Oberhumerну чО, btrfs (он у меня уже на всех сабволумах, включая рут, хом,… но на бут пока отключил, а то ещё и граб патчить) после первой загрузки потупил минут 20 (перестраивал айнод кэш), но потом всё живенько так, да.
оказывается на сайте kernel.org обновили дизайн!)
удобный диз однако :)
Ага, я зайдя туда сперва не понял, куда я попал вообще)
> Ага, я зайдя туда сперва не понял, куда я попал вообще)А я зашел туда и что я вижу? Я вижу уже 3.8.2 и 3.9-rc1? Хм... а вроде недавно не было. Или я слоупоком стал :)
У них просто есть машина времени
> У них просто есть машина времениУ них есть Торвальдс. А у него походу что угодно есть :)
Да, некто Konstantin Ryabitsev постарался: https://plus.google.com/109995262342451767357/posts/RniafRSqzVy
> Да, некто Konstantin Ryabitsev постарался:Ай молодчина, явно творческий человек -- сразу вспомнил его же пера http://lwn.net/Articles/83360/ :)
Ядро 3.9 поспеет к выпуску Ubuntu 13.04 или не надеяться?
Поспеет-поспеет! В аккурат к 13.04.2.
О, боже! Они открыли оптимизацию!
Если чо, оптимизация является частотно-статистической функцией.
Пособие для новичков:wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.8.2.tar.bz2
tar -xvf linux-3.8.2.tar.bz2
cd linux-3.8.2
export CONCURRENCY_LEVEL=2
fakeroot make-kpkg --initrd --append-to-version=-686-bigmem --revision=3.8.2 kernel_image
dpkg -i ../linux-image-3.8.2-686-bigmem_3.8.2_i386.deb
> Пособие для новичков:Если для новичков то хорошо бы еще уточнить что...
1) export CONCURRENCY_LEVEL=2 - это наверное по числу ядер CPU, а не мировая константа?
2) И судя по всему - для i386. Тогда как у разработчиков и продвинутых юзерей обычно машины все-таки с более чем 4Гб памяти и x86_64 по этому поводу (а хомячкам билдовать себе ядро - нафиг нужно).