Ati*_*liz 2 c++ profiling instructions
我想在我的代码中计算几个cpu指令.例如,我想知道有多少次添加,多少次乘法,多少次浮点运算,我的代码执行了多少个分支.我目前在Linux下使用gprof来分析我的c ++代码,但它只给出了对我的函数的调用次数,并且我手动估计了指令的数量.是否有任何工具可以帮助我?也许是一些虚拟机?
这是一个通用的建议,不是针对 Linux 的:您应该对 CPU 周期感兴趣。忘记作为性能衡量标准的指令数量。一个指令可能与其他 10 个指令的成本相同,因此它不会告诉您任何信息。
您应该关注 CPU 周期,以及在线程进入睡眠状态(“切换/退出”)的多线程环境中(如果不是全部的话),这将使您了解等待 I/ 的时间O、DB 等完成并影响 CPU 特权时间。