Как мы получаем эту магическую производительность, увеличивающую 200-линейный патч?

66

I читать сегодня на Phoronix , что есть 200 линейных патчей в ядро ​​Linux, что значительно улучшает оперативность настольных компьютеров.

Как пользователи Ubuntu могут получить это так, как это поддерживается?

    
задан popey 17.11.2010 в 00:13
источник

6 ответов

59

Обсуждение этого конкретного патча состоялось в списке рассылки команды ядра Ubuntu:

Ссылка

Но позвольте мне попытаться подробнее описать лучший способ для любого патча пробиться в ядро ​​Ubuntu ...

Во-первых, предпочтительная политика команды ядра Ubuntu заключается в том, что патчи должны быть отправлены и приняты вверх по течению, прежде чем быть втянутыми в ядро ​​Ubuntu. Это большая потребность в обслуживании команды Ubuntu Kernel Team для поддержки из-за патчей деревьев. Кроме того, если патч принесет пользу всему сообществу Kernel, он сначала должен идти вверх по течению.

Как только патч будет принят вверх по течению, он автоматически перейдет в ядро ​​Ubuntu. Запрос на выбор вишни или вытягивания можно также сделать, если захотите, см. Страницу KernelPatches , для получения дополнительной информации информация.

Если патч должен быть применен как SRU ( стабильное обновление версии ) к предыдущему выпуску Ubuntu, лучше всего получить патч принят в соответствующее восходящее стабильное дерево 2.6.xy. Как часть нашего нормального процесса SRU с ядром, мы постоянно обновляем до новейшего стабильного ядра. Таким образом, мы снова получим автоматически патч.

    
ответ дан Leann Ogasawara 17.11.2010 в 00:37
источник
20

Я только что прочитал поток lkml и надеюсь, что могу предложить некоторую информацию - хотя не о том, чтобы получить патч в Ubuntu. Как говорится в сообщении в списке Ubuntu, это, вероятно, будет в 2.6.38 в любом случае.

Патч автоматически группирует процесс на основе TTY. В lkml много дискуссий / аргументов, в которых говорится, что это не имеет отношения к типичному использованию настольных компьютеров - что не имеет никакого значения для интерактивных приложений. Все тестовые примеры основаны на «запуске задачи с интенсивным использованием процессора с терминала, а затем на отзывчивость другой задачи». Итак, компилируем ядро ​​и пытаемся смотреть видео, например.

Это не значит, что это нехорошо, но общие заголовки типа «настольная оперативность, улучшенная на порядок» могут вводить в заблуждение, если вы никогда не запускаете интенсивные задачи ЦП, связанные с TTY. Конечно, я ошибаюсь!

Были некоторые упоминания о способах достижения очень похожего результата, добавляя к вашим сценариям bash и позволяя всем пользователям создавать группы. Это будет работать, только если текущие ядра Ubuntu включили группы. Соответствующие должности:

  • Ссылка
  • Ссылка

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

    
ответ дан Roger Light 17.11.2010 в 12:23
12
  

Как пользователи Ubuntu могут получить это в ?

Акцент мой. Единственный способ получить его в поддерживаемом режиме - ждать, пока Ubuntu потянет его в ядро ​​Ubuntu. Поскольку это действительно просто внесение в список рассылки ядра, оно свежо до такой степени, что все тесты довольно анекдотичны, и я думаю, что это будет какое-то время, прежде чем он будет готов к массовому развертыванию.

Где-то между следующей версией и долгое время была бы моя необразованная догадка.

Но если вы большой мальчик (или девушка), и вы можете справиться со сломанным ядром, если что-то пойдет не так (то есть вы знаете, как использовать grub), вы можете исправить и скомпилировать ваше собственное ядро.

  1. Загрузите патч. Существуют разные версии, но лучшие по своему усмотрению были размещены ниже другим пользователем: Ссылка

  2. Загрузите исходный код ядра для вашей версии. В этом случае 2.6.36. Вы можете получить валил (оригинальный, немодифицированный командой ядра ядра Ubuntu) из kernel.org и извлечь его.

  3. Сохраните патч где-нибудь и примените его cd ing к исходному директорию ядра и запуску: patch -p1 < /path/to/patch (вам нужен пакет patch для этого ... Который, я думаю, входит как часть build-essential , если он не установлен по умолчанию)

  4. И затем продолжайте остальная часть «старомодного» процесса сборки ... Я действительно не стал бы беспокоиться о новых методах, поскольку они нацелены на исходные источники ядра Ubuntu / Debian ... Кроме того, старый способ кажется более простым ( для меня).

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

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

  • Я считаю, что Zen Kernel имеет этот патч в своем дереве, но я не уверен, что он еще в каких-либо сборках.
  • Ядро ликерола теперь тоже испечено.

Примечание: оба этих ядра (и, возможно, другие тоже) отклоняются от способа Ubuntu делать несколько ядер. Вы можете найти (как я сделал, когда я перешел в Liquorix), что масштабирование частоты процессора перестает работать или приостановка прерывается. Обычно есть исправления и обходные пути, но, скорее всего, вы не получите поддержки от AskUbuntu или остальной части Ubuntu communtiy, поскольку мы не можем проверять каждое ядро ​​там.

    
ответ дан Oli 17.11.2010 в 00:23
5

Вы можете использовать простой «взломать», опубликованный разработчиком RedHat в списке рассылки, который не требует исправления ядра, чтобы получить то же самое. Читайте об этом здесь: Альтернатива «Патчу ядра 200 строк, который творит чудеса» «Что вы можете использовать прямо сейчас»

    
ответ дан Alin Andrei 18.11.2010 в 16:43
1

Начиная с 2011-01-18, Linux 2.6.38-rc1 включает упомянутый патч.
См. Связанный новости Phoronix и Сообщение Linus .

Начиная с 2011-01-29, Natty Narwhal ежедневно строит суда с Linux 2.6.38.

Итак, в настоящее время существует два решения:

  • Получите последнее изображение Ubuntu 11.04 .
  • Или дождаться последней официальной версии Ubuntu 11.04 в апреле 2011 года.
ответ дан Maxime R. 19.01.2011 в 15:11
0

Я только что выбрал эту дискуссию и ее очень интересную. Я написал небольшой пост в блоге о том, как включить патч cgroup на Ubuntu 10.10.

Я действительно не тестировал, работает ли это или нет, поэтому обратная связь будет замечательной!     

ответ дан stefanlsd 17.11.2010 в 20:52