# Optimize CPU power and performance with dynamic voltage and frequency scaling Dynamic voltage and frequency scaling (DVFS) is a technique used to reduce power consumption of the CPU during active periods. This technique is used to switch the CPU core frequency based on load requirements. DVFS helps in balancing the power, performance, and thermal behavior of the device. Workload monitoring Load requirement analysis CPU frequency driver CPUCP firmware Voltage scaling Frequency scaling **Figure : DVFS workflow** For more information about DVFS, see [index: kernel/git/torvalds/linux.git](https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/cpu-freq?h=v6.6). For example, if the available CPU frequencies are 1 GHz, 1.5 GHz, and 2 GHz, and the application must run at 1 GHz, then CPU’s maximum frequency should be 1 GHz. This mechanism optimizes CPU power by ensuring appropriate use of CPU frequency and voltage, thereby supporting high performance. ## Customize CPU frequency The following table lists the commands used to tune CPU frequency for balanced power and performance: Table : Commands to tune CPU frequency | Commands | Explanation | | --- | --- | | cat /sys/devices/system/cpu/cpufreq/policy/scaling_cur_freq
Copy to clipboard | Reads the existing CPU frequency | | cat /sys/devices/system/cpu/cpufreq/policy/scaling_available_frequencies
Copy to clipboard | Reads the supported frequencies | | cat /sys/devices/system/cpu/cpufreq/policy/scaling_min_freq
Copy to clipboard | Reads the minimum supported CPU frequency | | echo > /sys/devices/system/cpu/cpufreq/policy/scaling_min_freq
Copy to clipboard |

  • Sets the minimum CPU frequency


  • Overwrites the existing CPU minimum frequency


  • Sets any frequency from scaling_available_frequencies


| | cat /sys/devices/system/cpu/cpufreq/policy/scaling_max_freq
Copy to clipboard | Reads the maximum supported CPU frequency | | echo > /sys/devices/system/cpu/cpufreq/policy/scaling_max_freq
Copy to clipboard |

  • Sets the maximum supported CPU frequency


  • Overwrites existing maximum CPU frequency


  • Sets any frequency from scaling_available_frequencies


| Tab QCS6490/QCS5430 Tab IQ-9075 Tab IQ-8275 Tab IQ-615 Note `` refers to 0, 4, and 7. - 0 is for the Silver cluster - 4 is for the Gold cluster - 7 is for the Prime cluster - Unit for frequency is KHz Note `` refers to 0 and 4. - 0 is for Cluster0 - 4 is for Cluster1 - Unit for frequency is KHz Note `` refers to 0, 2, and 4. > > > - 0 is for the Gold cluster > - 2 is for the Prime cluster > - 4 is for the Silver cluster > - Unit for frequency is KHz Note `` refers to 0 and 4. - 0 is for the Silver cluster - 4 is for the Gold cluster - Unit for frequency is KHz Note Any modifications made through `SSH` commands revert to their default values upon device reset. ## Next steps - [Efficient CPU idle power management](https://docs.qualcomm.com/doc/80-70030-30/topic/idlepowermanagement.html#idlepowermanagement) - [Monitor Suspend Power Management](https://docs.qualcomm.com/doc/80-70030-30/topic/suspend-power-management-state.html#suspend-power-management-state) - [Efficient wake up latency with power QoS API](https://docs.qualcomm.com/doc/80-70030-30/topic/pmqos.html#pmqos) Last Published: Jun 22, 2026 [Previous Topic CPU power management](https://docs.qualcomm.com/bundle/publicresource/80-70030-30/topics/cpupowermanagement.md) [Next Topic Manage CPU idle power states for energy efficiency](https://docs.qualcomm.com/bundle/publicresource/80-70030-30/topics/idlepowermanagement.md)