我目前正在尝试优化自制编译器发出的代码,用于自制语言。
我尝试过英特尔VTune,看看瓶颈在哪里:http://www.imada.sdu.dk/~sorenh07/misc/vtune-assembly-optimization.png
我觉得非常令人印象深刻的是,“subl”指令在一个运行30-90秒的程序中负责超过38%的时钟提示!任何人都可以解释一下原因吗?
对于未使用icc编译的程序,VTune中的“优化报告”功能显然不存在。是否存在建议优化汇编程序代码的程序? (也就是说,不是来自高级语言的代码)。
答案 0 :(得分:2)
我的猜测是,实际占据了38%的idivl指令......除了更长的分数比减法更有意义吗?