使用高通开发者工具对功耗性能的分析和优化
按之前博客,大致介绍了高通开发者工具,本文,我们主要介绍在运行游戏场景,使用骁龙分析工具来分析问题,通过使用SDK来尝试降低功耗、提升性能。了解使用开发者工具debug和优化的过程。
一、首先运行游戏,我们通过分析工具的窗口,来获取没优化前的运行相关信息:
进行游戏测试后,查看这些相关信息:
1-1:CPU小核基本运行到最大频率:
1-2:CPU大核基本运行到最大频率的50%到60%:
1-3:GPU运行在最大频率的60%:
1-4:大小核都会有一些大负载的调度:
1-5:从性能看,对于Cloth Simulation 的处理时间:
1-6:从性能看,对于Water Simulation的处理时间:
1-7:从性能看,对于GPU渲染的处理时间:
1-8:游戏后,系统的温度变化情况:
1-9:整个游戏过程,帧率基本维持在60fps:
1-10:整个游戏功耗,大约971mW:
总结:游戏测试结束后,温升高,功耗也大,容易触发到thermal的调控,从而容易影响到性能表现,不能确认每次玩游戏时,都能够保持在60fps的高性能模式。所以,如下尝试用SDK的来优化。
二、使用 Heterogeneous Compute SDK 来优化
2-1:在 Cloth Simulation 时,使用Affinity:
2-2:测试结果,小核频率下降,大核频率基本不变,GPU在最大频率的60%,保持在60fps,温升26度:
2-3:主要负载在大核上,小核负载小:
2-4: 整体优化后的功耗降低了:
三、尝试在小核上运行Water Simulation:
3-1:
3-2:测试结果,CPU频率基本不变,温升25度:
3-3:优化后的结果,整体功耗可以降低:
四、尝试运行一个Cloth simulation 时,在小核运行,两个Cloth simulation 时在大核运行:
4-1:
4-2:测试结果,温升21度,小核运行在85-90%的最大频率,大核运行在50-60%的最大频率,GPU在50-60% 的最大频率:
4-3:功耗结果,CPU功耗有所影响:
五、用 Power Optimization SDK 来继续优化:
5-1: 使用相关API mode:
5-2:通过初始化Power & HetCompute,设置大核为30-40%的最大频率,设置小核为70-80%的最大频率,设置GPU为0-30%的最大频率:
5-3:测试结果,温升14度,大小核频率降低,GPU频率也将低,同时维持了60fps:
5-4:优化后结果,功耗降低,温升减少,性能好。
如上所有过程,例举了使用高通开发者工具,优化功耗和性能的基本过程。我们利用分析工具来确认系统的状态,然后使用一些SDK的优化方式,来进行优化,最终达到功耗降低、性能提供、温升减少的效果。这个对于我们优化应用、游戏等情景,有良好的帮助。