简明的SSE和MMX指令参考,具有延迟和吞吐量

时间:2010-06-02 22:06:31

标签: assembly reference sse manual mmx

我试图通过使用带内联汇编的MMX和SSE指令集来优化某些算法。但是,我无法找到这些增强指令集的时序和用法的良好参考。您能否帮我找到包含有关吞吐量,延迟,操作数以及可能的说明简短描述信息的参考文献?

到目前为止,我发现:

英特尔指令参考 Intel 64 and IA-32 Architectures Developer's Manual: Vol. 2AIntel 64 and IA-32 Architectures Developer's Manual: Vol. 2B

英特尔优化指南 http://www.intel.com/Assets/PDF/manual/248966.pdf

整数运算时间 http://gmplib.org/~tege/x86-timing.pdf

3 个答案:

答案 0 :(得分:10)

英特尔指令参考应该提供这些指令实际执行情况的充分指导,我会想到吗?它有每个伪代码,它的操作描述,在某些情况下甚至是代表性案例的一个小图。

对于时间安排,没有我所知道的官方指南。 Agner Fog的页面是标准参考:

http://www.agner.org/optimize/

答案 1 :(得分:7)

Intel's Intrinsic Guide(在AVX页面的左下角)是一个组织良好的可搜索工具,您可以通过SSE版本和/或指令类型缩小范围,例如FP算术或整数逻辑。

对于每条指令,它还按CPU和参数显示延迟/吞吐量表。

答案 2 :(得分:1)

时间安排在“英特尔优化指南”中;有关每个CPU架构的每条指令的吞吐量和延迟,请参阅附录C.