我想我在 iPhone OS (iOS 4) 中找到了一些亮点。
我发现Accelerate Framework提供了 128 位、256 位、512 位和 1024 位整数数据类型。还有 Apple 的基本线性代数子程序 (BLAS) 的实现、Apple 的 LAPACK(线性代数包)和数字信号处理 (DSP) 例程的实现。
我很兴奋,因为据我所知,BLAS 和 LAPACK 是最好的(也是最著名的)库。(如果您从未听说过它们的名字,只需谷歌它们,您就会明白。)它们可以让您求解联立线性方程(即向量/矩阵表示法中的 A x = b),进行快速矩阵乘法等等。
我很确定这些库在基于 PowerPC 和 Intel 的 Mac 上都可用。但是,当我在 Xcode 中查找“iOS4 中的新增功能”文档时,它说数据类型“不受任何架构支持”。当我比较Mac OS X的vecLib 参考和 iOS的 vecLlib 参考时,我还发现 iOS 版本中缺少功能。
我的问题是:
是否有人使用这些库编译了任何程序(bignum 是我的主要兴趣领域)并在真正的 iPhone 设备上成功运行它们?(可以证明他们在库上的实际经验的回答者将更加感激。)
以下是参考库的链接:
加速框架(iOS 参考库)
vecLib 参考(Mac OS X 参考库)
vecLib 参考(iOS 参考库)
以下是 BLAS 和 LAPACK 的官方 FAQ:
BLAS FAQ
LAPACK FAQ
问问题
5575 次
2 回答
2
尽管我还没有在交付应用程序中使用过 Accelerate,但我确实从 Apple 的WWDC 2010 会议202 -“iPhone OS 的 Accelerate 框架”中得到了很多。如果您对此框架感兴趣,我强烈建议您观看该视频。
虽然可以在 iPhone 上使用其中的许多功能,但并非所有这些功能都已被移植。iOS 4.0 中只有 vDSP、BLAS 和 LAPACK 可用,尽管听起来其他人可能很快就会加入它们。
尽管是为 Mac 编写的,但“利用 Accelerate 框架”一文很好地介绍了该框架,以及您上面列出的资源。
于 2010-08-09T22:35:07.863 回答
1
我在这里基于 Yoshimasa Niwa 的项目在 OpenCV 中做了一些工作:
http://niw.at/articles/2009/03/14/using-opencv-on-iphone/en
他当前的代码使用 Accelerate 框架构建(请参阅自定义补丁)。
于 2010-10-17T13:39:17.353 回答