C++ 的 SIMD 内在函数封装及并行化、优化的数学函数(SSE、AVX、AVX512、NEON、SVE、WebAssembly、VSX、RISC-V)
C++ 的 SIMD 内在函数封装及并行化、优化的数学函数(SSE、AVX、AVX512、NEON、SVE、WebAssembly、VSX、RISC-V)
SIMD 内建函数的 C++ 封装
SIMD(单指令多数据)是微处理器的一项功能,已经存在多年。SIMD 指令可同时对一批值执行单个操作,因此能够显著加速代码执行。然而,这些指令在微处理器厂商和编译器之间各不相同。
xsimd 为库作者提供了一种统一的方式来使用这些特性。具体而言,它允许使用与单个值相同的算术运算符来操作批量数字。它还提供了对常见数学函数进行批量操作的加速实现。
| 工作流 | 状态 |
|---|---|
| android | |
| cross-rvv | |
| cross-sve | |
| cross | |
| cxx-no-exceptions | |
| cxx-versions | |
| emscripten | |
| linux | |
| macos | |
| windows |
除了 Xtensor 之外,Xsimd 已被多个主要开源项目所采用,例如:
XSimd 项目始于一系列博客文章 b
暂无开放 Issues,或尚未同步最近议题。