У якийсь момент багато хто з нас Ми наважилися пограти з губернаторами У нашій системі це робиться для покращення продуктивності або з певною метою, як-от робоче навантаження, програми, ігри тощо.
Цей тип модифікацій, Зазвичай вони не входять до загальних дистрибутивів І це зрозуміло, адже це означає збільшення чи зменшення (в залежності від випадку) ресурсів нашої команди.
Я згадую про це, тому що нещодавно а Інженер Google запропонував змінити la налаштування за замовчуванням Дель Таймер ядра Linux, збільшивши його частоту переривання з 250 Гц до 1000 Гц.
Ця зміна означатиме більшу частоту перемикання завдань і зменшення кількості часу в планувальнику завдань, якийі ефективність може бути покращена за певних сценаріїв. Зараз 250 Гц вважається балансом між продуктивністю, затримкою та енергоспоживанням.
Мотивація пропозиції
Uno з основних аргументів на користь цієї зміни є Оптимізація продуктивності на пристроях із дисплеями 120 Гц, що стає все більш поширеним на ПК та мобільних пристроях. При поточному налаштуванні 250 Гц похибка квантування часу становить приблизно половину часу кадру, що впливає на ефективність розподілу ресурсів.
Крім того, було помічено, що динамічний механізм масштабування напруги та частоти (DVFS) має тенденцію до агресивних стратегій вибору частоти щоб уникнути уповільнення. Це може призвести до непотрібного енергоспоживання, коли завдання вже завершилося, але процесор продовжує працювати на вищій частоті, оскільки його квант часу ще не закінчився.
Збільшення частоти перемикання завдань дозволить:
- Покращена ефективність динамічного керування частотою (DVFS).
- Більш точний розподіл часу планувальника завдань.
- Збільшена частота оновлення статистики завантаження ЦП.
- Зменшення часу очікування для незавершених завдань.
- Аргументи проти поправки
Зі свого боку, Інший інженер Google висловив свою незгоду зі зміною, аргументуючи це Підтримання частоти таймера на рівні 250 Гц найбільш вигідно для малопотужних пристроїв, як-от плати Інтернету речей і мобільні пристрої.
За його оцінкою, Підвищення частоти до 1000 Гц може призвести до збільшення споживання електроенергії. На пристроях Android, наприклад, у певних ситуаціях спостерігалося збільшення споживання процесора до 7%.
Крім того, Більша частота таймера означатиме частішу повторну активацію процесора. При 250 Гц таймери, заплановані на t+1 мс, t+2 мс, t+3 мс і t+4 мс, групуються в одне пробудження, тоді як при 1000 Гц буде чотири окремі пробудження, що може збільшити споживання енергії.
Результати тестування продуктивності
Про справу, портал Phoronix провів серію тестів на ПК з процесором AMD Ryzen 9 9950X, щоб оцінити вплив зміни частоти. Результати були неоднозначними:
- MКраща продуктивність із 1000 Гц у:
Llama.cpp
Nginx
Super Tux Kart
Селен
Час компіляції ядра - Найкраща продуктивність при 250 Гц на:
Darktable
PostgreSQL
Неперевершений
Ксонотичний
змішувач
СВТ-АВ1
RawTherapee
Щодо споживання енергії, результати були наступні:
- Налаштування на 1000 Гц:
Середнє споживання: 144,2 Вт
Мінімальне споживання: 0,18 Вт
Максимальне споживання: 202,13 Вт - Налаштування на 250 Гц:
Середнє споживання: 144,37 Вт
Мінімальне споживання: 0,07 Вт
Максимальне споживання: 202 Вт
Нарешті, варто згадати, що збільшення частоти переривань таймера ядра до 1000 Гц дає переваги в певних випадках використання, особливо в програмах, які вимагають більш частого перемикання завдань, і на пристроях з високою частотою оновлення дисплеїв. Однак він також має недоліки щодо енергоспоживання, особливо в малопотужних пристроях і середовищах, де енергоефективність є пріоритетом.
На даний момент, Пропозиція все ще обговорюється у спільноті, і його прийняття залежатиме від глибшого аналізу впливу в різних сценаріях використання.