在Wikipedia中,它说:
在SSE2中添加整数支持使得MMX在很大程度上是多余的,但在某些情况下通过将MMX与SSE操作并行使用可以进一步提高性能。
这是否意味着处理器可以在运行SSE / MMX指令的同时运行另一条MMX / SSE指令,因为这些指令在不同的单元中运行?
或者它只是意味着因为它们使用不同的寄存器,您可以在没有切换模式的情况下一起使用它们(MMX模式和FPU模式无法在“同时”工作,您必须手动切换到不同的模式)?
答案 0 :(得分:5)
现代CPU没有单独的MMX和SSE执行单元,而是具有128位执行单元,可以运行SSE或MMX微操作。在后一种情况下,只会使用处理器计算能力的一半。
组合SSE和MMX指令的唯一好处来自额外的8个MMX寄存器。如果性能受寄存器压力限制,有时可以通过使用除SSE之外的MMX寄存器来改善。在几乎所有情况下,您都必须在汇编中进行编写以进行此类优化。