c - Apple Accelerate Framework 库的开源等效项有哪些?

标签 c open-source fortran hpc accelerate-framework

如果我们在 Accelerate Framework 的保护下看一下,我们会看到几个库: 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/

相关文章:

php - 允许定义可编辑区域的开源 CMS

fortran - 从未格式化的文件中读取字符串(可变记录长度)

c - 读取文本文件时与 fgetc 的差异

c - 在 c 中的 libmodbus 中获取 modbus_report_slave_id 函数的段错误

open-source - 在 Pypy 上为 Numpy 做出贡献

windows - 为什么在 Windows 7 64 位(使用 Eclipse/Photran/Cygwin)上使用 GDB 调试 Fortran 代码时会出现缺少 DLL 错误?

fortran - 使用 gfortran 的名单中的科学记数法

c - 未定义的功率引用

c - 当两个进程试图访问一个信号量 = 0 的临界区时会发生什么?

linux - 'ls' 命令在 Linux/Unix 中如何工作?