算法中如何设置CPU频率CSDN

 时间:2024-10-22 18:58:37

1、在kernel中实现了两个driver,一个负责控制开关CPU的核数,叫做hot-plug驱动,另一个负责调整CPU的频率,叫做DVFS驱动。kernel中的driver会根据系统的负载,自动调整使用几个CPU和调整CPU频率。如果负载高了,提高频率,或者多开几个核,或者开大核。如果负载降下去了,就可以关大核,关核,降频。以下是两个知名手机厂商开源的config配置文档:

算法中如何设置CPU频率CSDN

2、在adb shell命令下,和cpu频率相关的目录:/sys/devices/system/cpu/cpuX, X表示cpu number.:/sys/devices/system/cpu/cpu0/cpufreq # lsaffected_cpus related_cpus scaling_governorcpuinfo_cur_freq scaling_available_frequencies scaling_max_freqcpuinfo_max_freq scaling_available_governors scaling_min_freqcpuinfo_min_freq scaling_cur_freq scaling_setspeedcpuinfo_transition_latency scaling_driver stats这些文件节点的读写属性:

算法中如何设置CPU频率CSDN

3、cpuinfo_cur_freq: 当前cpu正在运行的工作频率cpuinfo_max_freq:该文件指定了处理器能够运行的最高工作频率 (单位: 千赫兹)cpuinfo_min_freq :该文件指定了处理器能够运行的最低工作频率 (单位: 千赫兹)cpuinfo_transition_latency:该文件定义了处理器在两个不同频率之间切换时所需要的时间 (单位: 纳秒)scaling_available_frequencies:所有支持的主频率列表 (单位: 千赫兹)scaling_available_governors:该文件显示当前内核中支持的所有cpufreq governor类型scaling_cur_freq:被governor和cpufreq核决定的当前CPU工作频率。该频率是内核认为该CPU当前运行的主频率scaling_driver:该文件显示该CPU正在使用何种cpufreq driverscaling_governor:通过echo命令,能够改变当前处理器的governor类型scaling_max_freq:显示当前policy的上下限 (单位: 千赫兹)需要注意的是,当改变cpu policy时,需要首先设置scaling_max_freq, 然后才是scaling_min_freqscaling_setspeed:如果用户选择了“userspace” governor, 那么可以设置cpu工作主频率到某一个指定值。只需要这个值在scaling_min_freq 和 scaling_max_freq之间即可。工作模式:cat scaling_available_governors:/sys/devices/system/cpu/cpu0/cpufreq # cat scaling_available_governorsondemand userspace powersave interactive performanceCPU的频率调节模式:1. Performance. 不考虑耗电,只用最高频率。2. Interactive. 直接上最高频率,然后看CPU负荷慢慢降低。3. Powersave. 通常以最低频率运行,流畅度会受影响,一般不会用这个吧!4. Userspace. 可以在用户空间手动调节频率。5. Ondemand. 定期检查负载,根据负载来调节频率。

算法中如何设置CPU频率CSDN

4、对于这项飞思卡尔的实现:默认使用了performance,不过freescale在boot完成后改成了interactive.device/fsl/tek_mx6/init.rc:on property:sys.boot_completed=1# Set default CPU frequency governor# Set timer 40ms, min sample 60ms,hispeed at cpufreq MAX freq in freq_table at load 40% write /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor interactive最终可通过scaling_governor文件查看。

算法中如何设置CPU频率CSDN

5、工作频率:当前支持的cpu调节模式可通过 scaling_available_frequencies 查看。:/sys/devices/system/cpu/cpu0/cpufreq # cat scaling_available_frequencies1092000 988000 858000 793000 637000 494000 364000 221000相关的数据结构:kernel-4.4$ vi ./include/linux/cpufreq.h +59

算法中如何设置CPU频率CSDN

6、根据平台以及默认的最大频率来选择对应的频率列表。所以降频有两种方法:1. 直接编译静态修改频率列表。2. 通过scaling_max_freq文件动态写入。

算法中如何设置CPU频率CSDN
  • UG10.0如何建模带环眼和台肩的M9螺纹销轴?
  • 路由器频繁启动故障解决
  • 机器人怎么玩 机器人的出装 暴力机器人
  • 卡马逊苦行怎么解锁#校园分享#
  • 黑龙江2020年大批国企开始招聘,待遇如何?
  • 热门搜索
    国庆手抄报简单又漂亮 国庆节手抄报简单易画 关于爱的手抄报 缅怀先烈手抄报图片 科技新闻手抄报 环保手抄报文字 教师节手抄报模板 春节的手抄报图片大全 童话手抄报图片 感恩父母的手抄报