性能瓶颈优化
操作步骤
- 修改源码文件,如图1所示,将修改后的源码文件重命名为cpu_branch_prediction_after.cpp,并上传到“/home/demo”目录。
- 编译源码文件。
g++ -o /home/demo/cpu_branch_prediction_after /home/demo/cpu_branch_prediction_after.cpp
- 切换至鲲鹏性能工具安装目录,xxx指版本号,请根据实际情况替换。
cd /home/ksys-x.x.x-Linux-aarch64
- 采集优化后的应用的性能数据。
./ksys collect /home/demo/cpu_branch_prediction_after
图2 微架构统计数据
在微架构统计数据部分,发现Bad speculation(%)中的Branch Mispredicts(%)占比从优化前的54%降低至1%以下,应用计算性能得到提升。
- 切换至demo目录,查看优化后应用的运行时间。
- 切换至demo目录。
cd /home/demo
- 查看优化后应用的运行时间。
time /home/demo/cpu_branch_prediction_after
执行命令后,发现应用运行时间从61秒缩短到21秒,优化后的应用计算性能得到提升。
图3 运行时间
- 切换至demo目录。
父主题: 实践1:微架构分析
