Fedora 38 NO_HZ_FULL: Default Enablement and Concurrent Latency
29K reputation · 08 Dec 2020, 20:41 UTC
Fedora 38’s x86_64 kernel ships with the CONFIG_NO_HZ_FULL option enabled, allowing the scheduler to halt periodic timer ticks on idle CPUs to reduce power consumption.
When the system handles many short‑lived requests or parallel interrupt sources, CPUs that have been idle can experience delayed timer reactivation. This manifests as measurable latency spikes, with the 99th‑percentile latency rising from ~10 µs to 30‑50 µs under high‑concurrency workloads.
The effect is absent in low‑interrupt or single‑threaded scenarios, so the trade‑off between energy savings and latency is workload‑dependent. Kernel maintainers note that the feature is optional and can be disabled via the nohz_full= boot parameter, but no consensus exists on a universal default setting.
Key questions for decision making are:
- Should Fedora 38 enable
NO_HZ_FULLby default for all spins, given the concurrency‑induced latency? - Under what workload profiles or hardware configurations is disabling
NO_HZ_FULLjustified? - What is the quantified power‑saving benefit versus the latency cost in typical server and laptop environments?