До недавнього часу я вважав, що середнє навантаження (як показано, наприклад, вгорі) - це ковзне середнє значення для останніх n значень кількості процесу в стані "runnable" або "run". І n було б визначено "довжиною" ковзної середньої: оскільки алгоритм для обчислення середнього навантаження, здається, спрацьовує кожні 5 секунд, n було б 12 для середнього навантаження 1 хв, 12x5 для середнього навантаження 5 хв і 12x15 для середнього навантаження 15 хв.
Але потім я прочитав цю статтю: http://www.linuxjournal.com/article/9001 . Стаття досить стара, але той самий алгоритм реалізований сьогодні в ядрі Linux. Середнє навантаження - це не ковзаюча середня величина, а алгоритм, для якого я не знаю назви. У будь-якому разі я порівняв алгоритм ядра Linux і ковзну середню для уявного періодичного навантаження:
.
Є величезна різниця.
Нарешті мої запитання:
- Чому цю реалізацію було обрано порівняно з справжньою ковзною середньою, що має реальне значення для когось?
- Чому всі говорять про "середню завантаженість 1 хвилини", оскільки набагато більше, ніж за останню хвилину, враховується алгоритм. (математично, все міра з моменту завантаження; на практиці, враховуючи помилку округлення - все ще багато заходів)