- 官方
- 兴趣爱好 430浏览
先把原则写在最前
1. 非必要不调节,多数情况下预设的模式就够了。
底层的调节需要综合考虑性能、能耗、温度等等,最难的就是达到均衡,预设模式经过专业的工程师调节,力求体验。非专业用户可以调到激进,但可能出现副作用,比如用舒适温度换性能。
2. 如果核芯解放后出现异常发热或者卡顿的情况,建议回归预设效能(比如平衡模式)。
如果核芯解放调节后效果很好,欢迎分享论坛。
3基本原理概述
不同游戏对性能的调用有需求有差别,所以对不同游戏可以做不同调节。
核芯解放翻译如下,供大家参考:
Temperature: "2","3","4","5","6
温控, 数字越大越高温
dev/cpu_dma_latency "0","1"
是否让cpu进入睡眠
/sys/devices/system/cpu/cpufreq/policy0/scaling_governor :"0","1"
/sys/devices/system/cpu/cpufreq/policy4/scaling_governor
/sys/devices/system/cpu/cpufreq/policy7/scaling_governor
cpu运行速度的policy
0: 预设
1:最高速
MIN_ONLINE_CPU_CLUSTER_BIG :"2", "3"
大核至少运行的核心数, 3表示统统要运行, 2表示两个另一个可以OFF
MIN_ONLINE_CPU_CLUSTER_LITTLE : "2", "3", "4"
大核至少运行的核心数,4表示统统要运行, 2表示两个另2个可以OFF
SCHED_PREFER_SPREAD :"2", "3", "4"
让程序各个线程分配运行方式
0 Disable
1 在小核内积极散落运行
2 在大,小核内各自积极散落运行
3 在大小核内综合积极散落运行
4 在大小核内综合积极散落运行, 并可互选核心内空闲cpu
SCHED_UCLAMP_BOOST :"0", "10", "20", "30", "40"
让系统评估TASK BUSY程度,最低不能低于设定值 <--数值越大,让系统认为更BUSY, 会调高CPU 速度或是往大核超大核安排运行
MPCTLV3_LPM_BIAS_HYST:"0", "33", "66", "99"
计算CPU是否进入LOW POWER MODE的时间
数值越大越慢进入
sys/module/msm_performance/parameters/cpu_min_freq 0-3",
sys/module/msm_performance/parameters/cpu_min_freq 4-6",
sys/module/msm_performance/parameters/cpu_min_freq 7",
指定各个核心最小频率
sys/module/msm_performance/parameters/cpu_max_freq 0-3",
sys/module/msm_performance/parameters/cpu_max_freq 4-6",
sys/module/msm_performance/parameters/cpu_max_freq 7",
指定各个核心最大频率
/dev/cpuset/top-app/cpu : "1", "3", "15", "240", "127", "255"
/dev/cpuset/system-background/cpus: "1", "3", "15", "240", "127", "255"
/dev/cpuset/foreground/cpus : "1", "3", "15", "240", "127", "255"
/dev/cpuset/background/cpus: "1", "3", "15", "240", "127", "255"
最上层app, 前景app, 背景app, 背景service的cpu核心指定使用
使用cpu核心的bit mask,
例如
255=0xFF 表示 8 核心全用,
240 = 0xF0, 表示大四核使用
15 =0x0F, 表示只使用小核
/sys/class/kgsl/kgsl-3d0/min_pwrlevel :"9"-"0"
锁定GPU最低速 9:315Mhz 0: 840Mhz
/sys/class/kgsl/kgsl-3d0/max_pwrlevel
锁定GPU最高速 9:315Mhz 0: 840Mhz
/sys/class/kgsl/kgsl-3d0/idle_timer: "80","500","1000","2500","5000","10000"
gpu睡眠前空闲等待时间
单位 ms (毫秒)
/proc/sys/kernel/sched_downmigrate
/proc/sys/kernel/sched_upmigrate
/proc/sys/kernel/sched_group_downmigrate
/proc/sys/kernel/sched_group_upmigrate
核心运行工作排程
若工作运行忙碌超过upmigrate 数字(percentage), 将工作往大核或超大核排程
若工作运行忙碌低于dowbmigrate 数字(percentage), 将工作往大核或小核排程
/sys/devices/system/cpu/cpuX/sched_load_boost : "0","10","20","30","40","50","60","70"
预设某cpu的忙碌程度
scheduler根据cpu忙碌程度来调控频率以及大小和排程
将此值设大一点就会比较高速也可能比较容易往大核跑
/sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_load : "90", "80", "70", "60", "50", "40"
/sys/devices/system/cpu/cpu0/cpufreq/schedutil/hispeed_freq : "1209", "1497", "1804"
/sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_load
/sys/devices/system/cpu/cpu4/cpufreq/schedutil/hispeed_freq
/sys/devices/system/cpu/cpu7/cpufreq/schedutil/hispeed_load
/sys/devices/system/cpu/cpu7/cpufreq/schedutil/hispeed_freq
设定当cpu忙碌程度到达一定值时立刻跳到设定的频率
/sys/class/devfreq/soc:qcom,cpu-cpu-llcc-bw/bw_hwmon/io_percent
/sys/class/devfreq/soc:qcom,cpu-llcc-ddr-bw/bw_hwmon/io_percent
设定cpu/L3 cache/ddr/之间bus 速度百分比,数值越低跳得越高速
/sys/class/devfreq/18590100.qcom,cpu%d-cpu-l3-lat/min_freq : "3000","4032","6144","7104","8832","10560","12480","14208","15168","15936"
指定cpu/L3 memory bus speed频率
/sys/class/devfreq/18590100.qcom,cpu0-cpu-l3-lat/mem_latency/ratio_ceil: "400","1000","2000","4000","8000","16000"
设定memory bus的频率天花板, 数值越高越容易往上升频
STORAGE_CLK_SCALING_DISABLE STORAGE_CLK_GATING_DISABLE
UFS clock是否要关闭或调频
IO1,IO2
各cpu L3 cache是否要休眠
- 收藏
0 人打赏,共 0 积分
- 47帖子
- 7成员
- 0赞
- 0回复