16

我在哪里可以找到有关常见 SIMD 技巧的信息?我有一个指令集,并且知道如何编写简单的 SIMD 代码,但我知道,现在的 SIMD 功能要强大得多。它可以保存复杂的条件无分支代码。
例如 ( ARMv6),以下指令序列将 Rd 的每个字节设置为等于 Ra 和 Rb 的相应字节的无符号最小值:

USUB8 Rd, Ra, Rb
SEL Rd, Rb, Ra

教程链接/不常见的 SIMD 技术也很好 :) ARMv6对我来说是最有趣的,但是x86(SSE,...)/ Neon(在 ARMv7 中)/其他也很好。

4

2 回答 2

12

最好的 SIMD 资源之一是旧的 AltiVec 邮件列表。尽管 PowerPC/AltiVec 特定,但我怀疑此列表中的许多材料对于使用其他 SIMD 体系结构的任何人来说都是普遍感兴趣的。遗憾的是,该列表在移至 power.org 上的论坛后现在似乎已失效,但您也许可以找到它的存档版本。(如果没有,请告诉我 - 我几乎拥有 2000 年至 2007 年的所有帖子。)

http://developer.apple.com/hardwaredrivers/ve/index.html上还有很多关于 AltiVec、SSE、SIMD 矢量化和性能的潜在有用信息,其中很多可以转移到其他 SIMD架构。

于 2010-01-28T17:19:16.010 回答
6

在 sourceforge 上试用 AMD 的SSEPlus项目

于 2010-05-28T09:07:29.860 回答