什么CPU状态对intel FPU和SSE性能有影响?

时间:2016-12-22 20:39:44

标签: performance floating-point sse avx x87

在尝试追踪performance issue时,我最终查找了有关可能对x87和SSE指令的性能产生影响的信息。我发现信息非常难以追踪,因为它往往隐藏在大型英特尔PDF文件中,或者有时会在第三方网站上提及而没有太多解释。

这个问题是关于控制字,位,模式,特定数据(例如,非正规),等等。它不是关于内存带宽,缓存,页表,对齐或任何其他内存相关。我将回答一个我到目前为止找到的基本列表,但随时可以添加更多详细信息或我不知道的新状态。

1 个答案:

答案 0 :(得分:3)

到目前为止,我发现:

  • FPU Control World(FCW)。这有一个影响某些操作速度的精度字段。它大部分已经过时,因为它只影响x87指令。据我所知。
  • MXCSR注册。这会影响通过DAZ(非正规为零)和FTZ(清零为零)位的SSE数学运算。使用非正规的计算速度较慢。
  • AVX寄存器上部的状态。用vzeroupper指令清除。在intel论坛上有一个非常技术性的讨论:Software consequences of extending XMM to YMM