Чому 12.04 видаляє аромат ядра -server?


13

Ubuntu видаляє аромат -server, як зазначено в примітках до випуску 12.04:

Як і у Beta-1, ядро ​​Beta-2 більше не несе в собі окремі смаки amd64 -server та-generic ядра. Вони були об'єднані в єдиний загальний аромат ядра, щоб допомогти зменшити навантаження на обслуговування протягом життя цього випуску LTS.

Різниці між -generic та -server, схоже, пов'язані з попередженням, тимчасовим перериванням та планувальником вводу-виводу, як зазначено на: https://help.ubuntu.com/10.10/serverguide/C/preparing-to-install .html # intro-kernel-diff

Я прошу технічні характеристики.

  1. Отже, що відбувається зараз?
  2. Чи буде серверне видання запускати настільне ядро ​​без штрафу за продуктивність?
  3. Чи виправдано це якось?
  4. Що відбувається з цими відмінностями?
  5. Чи можна їх змінити в просторі користувачів?
  6. Не застосовується станом на 12.04?
  7. Якщо відповідь "так", ця зміна передбачає штрафну ефективність?

Усі вони - питання, на які можна відповісти. Я прошу певної зміни на пакеті, не більше нічого.

Відповіді:


10

Як ви помітили у оголошеннях про випуск, загальні та серверні аромати ядра були об'єднані для випуску 12.04, намагаючись зменшити навантаження на експлуатацію протягом життя LTS. Два смаки ядра насправді відрізнялися лише щодо двох основних параметрів конфігурації ядра: планувальника вводу / виводу за замовчуванням та моделі вибору.

Про це детально йшлося у списку розсилки команди Ubuntu Kernel Team

Як зазначено в цій темі, планувальник вводу / виводу за замовчуванням змінився з "граничного терміну" на "cfq". Однак кожен, хто хоче залишитися з планувальником термінів вводу / виводу, може зробити це під час завантаження, встановивши elevator=deadline.

Модель виплат була змінена з CONFIG_PREEMPT_NONE на CONFIG_PREEMPT_VOLUNTARY. На жаль, я, на жаль, не маю жодних орієнтирів ефективності, які б вас вказували. Сподіваюся, що це допомагає деяким. Спасибі.


7

На ваше запитання "чому" відповідають у запропонованій вами цитаті - адже так простіше підтримувати. Функціональність ядра параметризована досить добре, ви можете змінювати такі речі, як планувальник, під час виконання, тому немає необхідності компілювати різні за замовчуванням.

Точні причини та обговорення деталей вам доведеться запитати у списку розсилки Ubuntu KernelTeam - див. Інформаційну сторінку KernelTeam Wiki для отримання контактної інформації.


2

Зараз відбувається те, що є лише одне ядро ​​і для сервера, і для робочого столу. Якщо ви хочете, планувальник IO можна змінити під час виконання, але CFQ є найбільш повнофункціональним та активно підтримуваним планувальником, тому він є хорошим за замовчуванням. Те, яке ви використовуєте, мало значить для більшості навантажень. Серверне ядро ​​використовувалося для відключення навіть добровільного вибору ядра, оскільки теоретично воно може дати незначну кількістькраща пропускна здатність, але я не знаю жодних вимірювань продуктивності, які насправді показують якусь користь, тому на практиці сервери не впливатимуть, переходячи до настільної моделі премпінгу. Ядро також не галочне (CONFIG_NO_HZ), тобто означає, що воно планує переривання таймеру лише за потреби, що базується на поточних запущених таймерах додатків, а не через фіксований інтервал. .

TL; DR: Не було користі у підтримці іншого ядра для серверів, тому практика припинилася.


Планувальник введення / виведення робить дійсно робить різницю , особливо для віртуалізації робочих навантажень. Подивіться тут: publib.boulder.ibm.com/infocenter/lnxinfo/v3r0m0/topic/liaat/… , він робить висновок "загалом, на рисунку видно, що планувальник термінів вводу / виводу перевершує планувальник вводу / виводу CFQ, особливо в багатопотокові сценарії " .
syneticon-dj
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.