Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# SPDX-License-Identifier: GPL-2.0-only
#
# Timer Interrupt Frequency Configuration
#

choice
	prompt "Timer frequency"
	default CONFIG_HZ_250
	help
	 Allows the configuration of the timer frequency. It is customary
	 to have the timer interrupt run at 1000 Hz but 100 Hz may be more
	 beneficial for servers and CONFIG_NUMA systems that do not need to have
	 a fast response for user interaction and that may experience bus
	 contention and cacheline bounces as a result of timer interrupts.
	 Note that the timer interrupt occurs on each processor in an CONFIG_SMP
	 environment leading to CONFIG_NR_CPUS * CONFIG_HZ number of timer interrupts
	 per second.


	config CONFIG_HZ_100
		bool "100 HZ"
	help
	  100 Hz is a typical choice for servers, CONFIG_SMP and CONFIG_NUMA systems
	  with lots of processors that may show reduced performance if
	  too many timer interrupts are occurring.

	config CONFIG_HZ_250
		bool "250 HZ"
	help
	 250 Hz is a good compromise choice allowing server performance
	 while also showing good interactive responsiveness even
	 on CONFIG_SMP and CONFIG_NUMA systems. If you are going to be using CONFIG_NTSC video
	 or multimedia, selected 300Hz instead.

	config CONFIG_HZ_300
		bool "300 HZ"
	help
	 300 Hz is a good compromise choice allowing server performance
	 while also showing good interactive responsiveness even
	 on CONFIG_SMP and CONFIG_NUMA systems and exactly dividing by both CONFIG_PAL and
	 CONFIG_NTSC frame rates for video and multimedia work.

	config CONFIG_HZ_1000
		bool "1000 HZ"
	help
	 1000 Hz is the preferred choice for desktop systems and other
	 systems requiring fast interactive responses to events.

endchoice

config CONFIG_HZ
	int
	default 100 if CONFIG_HZ_100
	default 250 if CONFIG_HZ_250
	default 300 if CONFIG_HZ_300
	default 1000 if CONFIG_HZ_1000

config CONFIG_SCHED_HRTICK
	def_bool CONFIG_HIGH_RES_TIMERS