如果我们在 Accelerate Framework 的保护下看一下,我们会看到几个库:
我知道 BLAS 和 LAPACK 是开源的,并且其他地方使用的相同代码可以针对 Accelerate 进行编译。 但是 vForce、vMathLib(以及 vMisc 中的其他内容)和 vDSP 又如何呢?这些库有等效的开源吗?
编辑:
让我详细说明一下(只知道我有足够的知识来做到这一点)。基本上,vDSP、vFoce 和 vMathLib 是面向 vector 的库。因此,如果我们有一个 vector 并想要计算其上的分量函数,例如 sin() 和 cos(),那么使用 Accelerate 中的 vvsincos() 会更快,因为它将管道化 sin() 和 cos 的计算() 对于 vector 中的所有条目,这比在 vector 上使用 for 循环更快。 只需将这些函数展开为泰勒级数并使用三角关系,我们就会发现存在多次重复计算,该框架试图避免这种情况。
这与 vDSP 等下的 FFT 相同
然后,我的问题是:与此等效的最佳开源是什么?如果我在 Accelerate 下开发项目,如何使用开源工具分发它而不需要重写我的代码?
最佳答案
Stephen Canon (@stephencanon) 很友善地在 Twitter 上回复了我:
” OpenCV 提供了一些 vImage 功能,而 GSL 与 vDSP 有一些重叠。两者都不是完全等效的,也不是接口(interface)兼容的,因此没有像 BLAS/LAPACK 那样的直接替代。 ”
关于c - Apple Accelerate Framework 库的开源等效项有哪些?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16432028/