上次,刚把这篇文章写好,这csdn的网站就挂了,后来一翻,更新了文章的新功能(切换到MarkDown编辑器)。心里一万句mmp不知当讲不当讲。
好了 ,正式进入正题
首先,需要在你的linux中配置好simplescalar,若没配置好,请参考我的上一篇文章,然后找到你要剖析的benchmark。
1、在你linux下的terminal中进入到你benchmark 的src文件夹下,make clean (因为有些benchmark是别人make过的)
2、然后打开Makefile文件把编译器修改成gcc ,因为你想用gprof来分析代码,必须用gcc去编译,而不能用交叉编译器 ,因为gprof与交叉编译器的指令集是不一样的
3、 修改完成后,make ,然后进入exec 文件夹下 会有shell脚本,打开脚本 看编译器 修改成 gcc -pg(此处不懂,请自行百度gprof用法)
4、这时文件夹下会出现gmon.out文件 ,然后你就可以使用gprof命令去分析代码了
(下方是修改过后的模拟器)
5、分析完了之后,把Makefile文件的编译器还改回gcc交叉编译器,先make clean 然后make ,
6、利用自己的模拟器命令去分析 代码,得到加速比