OpenCL如何启用性能模
OpenCL如何启用性能模
- 10 如何开启性能模式
- 10.1 Adreno A3x GPU
- 10.1.1 CPU设置
- 10.1.2 GPU设置
- 10.2 Adreno A4x GPU and Adreno A5x GPU
- 11 完结
10 如何开启性能模式
要启用性能模式,Android设备通常需要root访问(adb root;adb remount)。注意,如果系统重新启动,需要重新运行这些命令。
10.1 Adreno A3x GPU
10.1.1 CPU设置
/*disabling mpdecision keeps all CPU cores ON*/
adb shell stop mpdecision
/*Set performance mode for all CPU cores. In this case, a dual core CPU*/
adb shell "echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
adb shell "echo 1 > /sys/devices/system/cpu/cpu1/online"
adb shell "echo performance > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor"
10.1.2 GPU设置
关闭功率调节策略:
- 高版本支持以下方法来禁用功率调节:
"echo performance > /sys/class/kgsl/kgsl-3d0/devfreq/governor"
- 旧版本支持以下方法来禁用功率调节:
/*Disable power scaling policy for GPU*/
adb shell "echo none > /sys/class/kgsl/kgsl-3d0/pwrscale/policy"
关闭GPU休眠,强制GPU时钟/总线投票/图形设备电源始终打开:
- 保持时钟开启,直到空闲超时强制断电。
- 永久保留总线投票。
- 永久保持图形设备供电。
高版本的命令顺序为:
adb shell “echo 1 > /sys/class/kgsl/kgsl-3d0/force_clk_on”
adb shell “echo 1 > /sys/class/kgsl/kgsl-3d0/force_bus_on”
adb shell “echo 1 > /sys/class/kgsl/kgsl-3d0/force_rail_on”
旧版本的命令序列为:
/*Disable GPU from going into sleep*/
adb shell "echo 0 > /sys/class/kgsl/kgsl-3d0/pwrnap"
/*Or Set a very high timer value for GPU sleep interval*/
adb shell "echo 10000000 > /sys/class/kgsl/kgsl-3d0/idle_timer"
10.2 Adreno A4x GPU and Adreno A5x GPU
adb shell "cat /sys/class/kgsl/kgsl-3d0/gpuclk"
adb shell "echo 0 > /sys/class/kgsl/kgsl-3d0/min_pwrlevel"
adb shell "echo performance >/sys/class/kgsl/kgsl-3d0/devfreq/governor"
adb shell "cd /sys/class/devfreq/qcom,cpubw.* && echo performance >
governor"
adb shell "echo performance >/sys/class/devfreq/qcom,cpubw.29/governor"
adb shell "echo 1 > /sys/devices/system/cpu/cpu0/online"
adb shell "echo 1 > /sys/devices/system/cpu/cpu1/online"
adb shell "echo 1 > /sys/devices/system/cpu/cpu2/online"
adb shell "echo 1 > /sys/devices/system/cpu/cpu3/online"
adb shell "echo 1 > /sys/devices/system/cpu/cpu4/online"
adb shell "echo 1 > /sys/devices/system/cpu/cpu5/online"
adb shell "echo 1 > /sys/devices/system/cpu/cpu6/online"
adb shell "echo 1 > /sys/devices/system/cpu/cpu7/online"
adb shell stop thermald
adb shell stop mpdecision
adb shell "echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
adb shell "echo performance > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor"
adb shell "echo performance > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor"
adb shell "echo performance > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor"
adb shell "echo performance > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor"
adb shell "echo performance > /sys/devices/system/cpu/cpu5/cpufreq/scaling_governor"
adb shell "echo performance > /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor"
adb shell "echo performance > /sys/devices/system/cpu/cpu7/cpufreq/scaling_governor"
adb shell "cat /sys/class/kgsl/kgsl-3d0/gpuclk"
adb shell "echo 1 > /sys/class/kgsl/kgsl-3d0/force_clk_on"
adb shell "echo 1000000 > /sys/class/kgsl/kgsl-3d0/idle_timer"
仅GPU:
adb shell echo 0 > /sys/class/kgsl/kgsl-3d0/min_pwrlevel
adb shell echo 0 > /sys/class/kgsl/kgsl-3d0/max_pwrlevel
11 完结
本系列文档打算提供一个详细的指导,基于Adreno gpu如何优化OpenCL程序。本文提供了大量的信息来帮助开发人员理解OpenCL基本原理和Adreno架构,以期能够掌握OpenCL优化技术。
OpenCL优化通常具有挑战性,需要大量的试验和错误。由于每个供应商可能有自己的最佳实践做相同的任务,这是重要的阅读和深入了解指南和实践的Adreno gpu。许多看起来微不足道的因素可能会对性能产生重大影响。不幸的是,如果没有实践和实践,这些问题很难解决。
由于时间限制和其他因素,有些主题没有涉及。Adreno gpu支持许多扩展,可以显著提高性能和添加额外的功能。例如,最近的Adreno gpus支持一些专有的图像格式,从图像信号处理器(ISP)捕获的原始图像和视频数据可以被压缩到直接和高效的处理。这可以节省一些手动处理,并提高带宽利用率。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
