Настройки CONFIG_HZ в ядре Linux
Дано: debian amd64 7.8 с ядром 3.2, запущен в режиме консоли, 2 процессора по 6 ядер каждый. Обслуживает несколько нагруженных игровых серверов (valve) 32битной архитектуры.
Вопрос: какими должны быть настройки ядра в разделе CONFIG_HZ для подобной нагрузки? Вопрос сохранения электроэнергии не интересует вообще. Требуется максимально быстрая отзывчивая система.
Вопрос2: есть ли разница между настройками HZ у ядра 3.2 и ядра 4?
Для справки ниже приведен процесс настройки ядра 2.6
param.h and jiffies.h
vi include/asm-i386/param.h
Code
#ifndef _ASMi386_PARAM_H
#define _ASMi386_PARAM_H
#ifdef __KERNEL__
# define HZ 1500 /* Internal kernel timer frequency */
# define USER_HZ 1500 /* .. some user interfaces are in "ticks" */
# define CLOCKS_PER_SEC (USER_HZ) /* like times() */
#endif
#ifndef HZ
#define HZ 100
#endif
#define EXEC_PAGESIZE 4096
#ifndef NOGROUP
#define NOGROUP (-1)
#endif
#define MAXHOSTNAMELEN 64 /* max length of hostname */
#endif
vi include/linux/jiffies.h
/*
* The following defines establish the engineering parameters of the PLL
* model. The HZ variable establishes the timer interrupt frequency, 100 Hz
* for the SunOS kernel, 256 Hz for the Ultrix kernel and 1024 Hz for the
* OSF/1 kernel. The SHIFT_HZ define expresses the same value as the
* nearest power of two in order to avoid hardware multiply operations.
*/
#if HZ >= 12 && HZ < 24
# define SHIFT_HZ 4
#elif HZ >= 24 && HZ < 48
# define SHIFT_HZ 5
#elif HZ >= 48 && HZ < 96
# define SHIFT_HZ 6
#elif HZ >= 96 && HZ < 192
# define SHIFT_HZ 7
#elif HZ >= 192 && HZ < 384
# define SHIFT_HZ 8
#elif HZ >= 384 && HZ < 768
# define SHIFT_HZ 9
#elif HZ >= 768 && HZ < 1536
# define SHIFT_HZ 10
#elif HZ >= 1536 && HZ < 3072
# define SHIFT_HZ 11
#else
# error You lose.
#endif
make menuconfig
Processor type and features --->
[ ] Tickless System (Dynamic Ticks) (NEW)
[*] High Resolution Timer Support
Preemption Model (Preemptible Kernel (Low-Latency Desktop))
[*] Preempt The Big Kernel Lock
Timer frequency (1000 HZ)
Источник: Stack Overflow на русском