|
1
45
首先,我不建议使用内置函数——它们不可移植(跨同一架构的编译器)。 使用 intrinsics 海湾合作委员会 does a wonderful job 将SSE内部函数优化为更优化的代码。您可以随时查看程序集,了解如何充分利用SSE。 内部函数很简单-就像普通函数调用一样:
使用
当然,还有更多的选择,上证所是真正强大的,在我看来,相对容易学习。 也见 https://stackoverflow.com/tags/sse/info 有关参考线的某些链接。 |
|
|
2
40
既然你要求资源: A practical guide to using SSE with C++ :关于如何有效地使用SSE的良好概念概述,包括示例。 MSDN Listing of Compiler Intrinsics :全面参考您的所有内在需求。它是msdn,但这里列出的几乎所有内部函数都由gcc和icc支持。 Christopher Wright's SSE Page :快速参考SSE操作码的含义。我想英特尔手册也可以提供同样的功能,但速度更快。 最好用intrinsics编写大部分代码,但一定要检查编译器输出的objdump,以确保它生成高效的代码。SIMD代码生成仍然是一种相当新的技术,在某些情况下编译器很可能会出错。 |
|
|
3
7
我发现Agner Fog博士的研究和优化指南非常有价值!他还有一些我还没有尝试过的库和测试工具。 http://www.agner.org/optimize/ |