【问题标题】:Concise SSE and MMX instruction reference with latencies and throughput具有延迟和吞吐量的简明 SSE 和 MMX 指令参考
【发布时间】:2011-02-27 01:34:15
【问题描述】:

我正在尝试通过将 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

【问题讨论】:

    标签: assembly reference sse manual mmx


    【解决方案1】:

    时序在《英特尔优化指南》中;有关每个 CPU 架构的每条指令的吞吐量和延迟,请参见附录 C。

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

      • 这是我发现的最好的,可以查看哪些指令可以满足您的需求。其他指南非常适合详细说明每条 ASM 指令的作用,但这会占用太多空间,您无法获得概览。我希望有类似于内在指南的东西,但直接用于 asm。不过,它主要是 1:1 映射。
      【解决方案3】:

      英特尔指令参考应该为这些指令的实际作用提供充分的指导,我会想到吗?每个都有伪代码、操作说明,在某些情况下甚至还有一个代表案例的小图。

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

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

      【讨论】:

      • Agner 指南很棒。正是我需要的。
      猜你喜欢
      • 2019-08-27
      • 2022-12-25
      • 2017-03-05
      • 2018-12-14
      • 2021-04-16
      • 2017-11-19
      • 2012-05-16
      • 2016-11-16
      • 2015-04-16
      相关资源
      最近更新 更多