如果我们看一下 Accelerate Framework 的保护伞,我们会看到几个库:
我知道 BLAS 和 LAPACK 是开源的,并且在其他地方使用的相同代码可以针对 Accelerate 进行编译。但是 vForce、vMathLib(以及 vMisc 中的其他)和 vDSP 呢?这些库是否有任何开源等效项?
编辑:
让我再详细说明一下(只知道我有足够的知识这样做)。基本上,vDSP、vFoce 和 vMathLib 是面向矢量的库。所以,如果我们有一个向量并且想要计算一个基于分量的函数,比如 sin() 和 cos(),那么使用 Accelerate 中的 vvsincos() 会更快,因为它将管道化 sin() 和 cos 的计算() 用于向量中的所有条目,这比在向量上使用 for 循环更快。简单地在泰勒级数中扩展这些函数并使用三角关系,我们看到有几个重复的计算正在进行,框架试图避免这种情况。
这对于 vDSP 下的 FFT 等也是一样的
比,我的问题是:与此等效的最佳开源是什么?如果我在 Accelerate 下开发我的项目,我如何使用开源工具分发它而不需要重写我的代码?