LinuxCommandLibrary

cpufreq-info

Display CPU frequency scaling information

TLDR

Show CPU frequency information for all CPUs

$ cpufreq-info
copy

Show CPU frequency information for the specified CPU
$ cpufreq-info [[-c|--cpu]] [cpu_number]
copy

Show the allowed minimum and maximum CPU frequency
$ cpufreq-info [[-l|--hwlimits]]
copy

Show the current minimum and maximum CPU frequency and policy in table format
$ cpufreq-info [[-o|--proc]]
copy

Show available CPU frequency policies
$ cpufreq-info [[-g|--governors]]
copy

Show current CPU work frequency in a human-readable format, according to the cpufreq kernel module
$ cpufreq-info [[-f|--freq]] [[-m|--human]]
copy

Show current CPU work frequency in a human-readable format, by reading it from hardware (only available to root)
$ sudo cpufreq-info [[-w|--hwfreq]] [[-m|--human]]
copy

SYNOPSIS

cpufreq-info [options]

PARAMETERS

--help
    Display help text and exit.

--version
    Display version information and exit.

-c CPU
    Limit the output to information about a specific CPU core. CPU specifies the CPU number.

-d
    Print debugging information.

DESCRIPTION

The cpufreq-info command provides detailed information about the CPU frequency scaling capabilities of your Linux system. It reports on available CPU frequency governors, supported frequency ranges, and current operating frequencies for each CPU core. This tool is useful for understanding how your system manages CPU power consumption and performance. By examining the output, you can determine if frequency scaling is properly configured and identify potential issues related to performance throttling. The command relies on the cpufreq subsystem within the Linux kernel to gather its data. It parses information from the /sys/devices/system/cpu/cpu*/cpufreq directory. Note that the availability and specific details provided by cpufreq-info depend on the kernel version, CPU architecture, and the presence of appropriate CPU frequency scaling drivers.

CAVEATS

The output and functionality of cpufreq-info are heavily dependent on the Linux kernel's cpufreq subsystem and the specific CPU frequency scaling drivers used. If these are not properly configured, the command may provide inaccurate or incomplete information.

INTERPRETING OUTPUT

The output typically includes information about:
Available CPU(s): The CPUs on which frequency scaling is enabled.
Driver: The kernel driver used for frequency scaling.
CPUs which run at the same hardware frequency: CPUs that share a frequency domain.
Hardware limits: The minimum and maximum supported frequencies.
Available governors: The available CPU frequency governors (e.g., performance, powersave, ondemand).
Current policy: The governor and frequency range currently in use.
Current Frequency: Current operating frequency of CPU

HISTORY

The cpufreq-info command is part of the cpufrequtils package, which has been available for many years in most Linux distributions. It was developed to provide a user-friendly interface to the cpufreq subsystem of the Linux kernel, allowing users to easily query and monitor CPU frequency scaling settings. Historically, it has been a key tool for managing CPU power consumption on laptops and servers.

SEE ALSO

cpupower(1), perf(1)

Copied to clipboard