我正在使用SSE2指令优化算法.但是当我测试性能时,我遇到了这个问题:
I)英特尔e6750
II)Phenom II x4 2.8Ghz
任何人都可以帮助我为什么会这样?我对结果感到很困惑.
在这两种情况下,我都使用-O3作为标志来编译g ++.
PS:算法不使用浮点数学,它使用SSE的整数指令.
在过去 5 年左右的时间里,英特尔对其 SSE 实施进行了重大改进,而 AMD 并没有真正跟上。最初,两者实际上都只是 64 位执行单元,128 位操作被分解为 2 个微操作。不过,自从推出 Core 和 Core 2 以来,Intel CPU 就拥有完整的 128 位 SSE 实现,这意味着 128 位操作有效地获得了 2 倍的吞吐量提升(1 个微操作与 2 个微操作)。较新的 Intel CPU 还具有多个 SSE 执行单元,这意味着对于 128 位 SIMD 指令,每个时钟吞吐量可以获得 > 1 条指令。