设置 CPU 数量和 CPU 频率
设置活动 CPU 核心数
此项可以在启动时或运行时设置。要在启动时设置,请进入 U-boot 提示符并设置以下环境变量。
以下示例将 CPU 数量设置为 2(假设四核系统):
1 | => setenv extraargs maxcpus=2 |
要检查 CPU 数量:
1 | # cat /proc/cpuinfo |
要在运行时禁用/启用 CPU:
1 | # echo 0 > /sys/devices/system/cpu/cpuN/online |
其中N是 CPU 核心的数量。在 4 核系统中,N 为 0 到 3 之间的数字。
CPU频率
有多个频率调节器可以确定频率策略。
列出所有可用的调节器:
1 | # cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors |
默认频率调节器是“ondemand”,它根据当前系统负载设置 CPU 频率。
有关 CPU 频率和调速器的更多信息,请参阅内核文档:
https://github.com/TechNexion/linux-tn-imx/blob/tn-imx_5.4.70_2.3.0-stable/Documentation/admin-guide/pm/cpufreq.rst
设置调速器:
1 | # echo <governor> > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor |
例如,将调控器设置为powersave:
1 | # echo powersave > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor |
列出可用的频率:
1 | # cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies |
查看当前CPU频率:
1 | # cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq |
检查当前最大频率:
1 | # cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq |
设置最大频率:
1 | # echo <frequency> > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq |
frequency从可用频率列表中选择。例如,要将最大频率设置为 1.6GHz(i.MX8M Mini 或 i.MX8M Plus):
1 | # echo 1600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq |
在上面的例子中,我们将最大频率设置为1.6GHz,但当前频率为1.2GHz。
假设我们想将 CPU 频率设置为最大值?我们可以将调速器设置为performance,CPU 频率将自动设置为允许的最大缩放频率。
1 | # echo 1800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 YuKiFuHaNeの博客!





