中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
鲲鹏小智

总结

我们在编写代码时,除了要考虑汇编本身指令的优化,还需要考虑流水线的编排对性能的影响,在做流水线编排时,要尽量减少互锁的发生。CPU可以在大部分情况下工作良好,并且编译器已经为乱序处理器优化了近20年。当指令和数据按照顺序执行时,CPU可以获得最好的性能。

因此,首先,使用简单的代码。简单直接的代码会帮助编译器的优化引擎识别并优化代码,尽量不使用跳转指令,当你不得不跳转时,尽量每次跳转到同样的方向。复杂的设计,例如动态跳转表,虽然看起来很酷并且的确可以完成非常强大的功能,但不管是处理器还是编译器,都无法进行很好的预测处理,因此复杂的代码很可能导致流水线停顿和猜测错误,从而极大的损害处理器性能。

其次,使用简单的数据结构。保持数据顺序、相邻和连续可以阻止数据停顿。使用正确的数据结构和数据分布可以获得很大的性能提升。只要保持代码和数据结构尽量简单,剩下的工作就可以放心地交给编译器的优化引擎来完成。

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词