|
原帖由 larrabee 于 2008-8-31 16:53 发表
我楼顶发贴时就在想有菜鸟说只有汇编才能影响cpu指令级并行,不幸而言中。
我很菜,你比我更菜。。。。看完那本“软件优化手册 --IA32平台高性能手册“ ,再来教导我吧。
所谓的软件优化,无非是针对某种或者某一类编译器来写代码,让编译器能够编译出高性能的机器码来而已。
最简单的例子就是
i++; => 得到的机器指令是 inc
i+1; => 得到的机器指令是 add
两者效率相差极大,虽然干的事情一模一样。
但是机器不是人,某些时候它就是死活出不来好的代码,所以才有嵌入汇编码这种事情发生。
所以,说到底,想要有好的机器码,你就要去研究编译器,无论是别人写的还是自己写的。 |
|