iPhone OS (iOS 4) 上的 Bignum、线性代数和数字信号处理

发布于 2024-09-13 14:19:21 字数 2099 浏览 4 评论 0原文

我想我在 iPhone 操作系统 (iOS 4) 中发现了一些精华。

我发现有 128 位、256 位、512 位和 1024 位整数数据类型,由 Accelerate Framework。还有 Apple 的基本线性代数子程序 (BLAS) 实现、Apple 的 LAPACK(线性代数包)实现以及数字信号处理 (DSP) 例程。

我很兴奋,因为据我所知,BLAS 和 LAPACK 是最好的(也是最著名的)库。 (如果您从未听说过他们的名字,只需谷歌一下,您就会明白。)它们可以让您求解联立线性方程(即 Ax = b向量/矩阵表示法),进行快速矩阵乘法等等。

我非常确定这些库在基于 PowerPC 和基于 Intel 的 Mac 上都可用。然而,当我在 Xcode 中查找“iOS4 中的新增功能”文档时,它说这些数据类型“在任何体系结构上均不受支持”。当我比较 Mac OS X 的 vecLib 参考vecLlib Reference for iOS,我还发现iOS版本缺少函数。

我的问题是:
有没有人使用这些库编译任何程序(bignum 是我的主要兴趣领域)并在真正的 iPhone 设备上成功运行它们? (如果回答者能够展示他们在图书馆的实际经验,我们将更加感激。)

以下是参考库的链接:
加速框架(iOS 参考库)
vecLib 参考(Mac OS X 参考库)
vecLib参考(iOS参考库)

以下是 BLAS 和 LAPACK 的官方常见问题解答:
BLAS 常见问题解答
LAPACK 常见问题

I think I've found some gems in the iPhone OS (iOS 4).

I found that there're 128-bit, 256-bit, 512-bit and 1024-bit integer data types, provided by the Accelerate Framework. There're also Apple's implementation of Basic Linear Algebra Subprograms (BLAS), Apple's implementation of LAPACK (Linear Algebra PACKage), and Digital Signal Processing (DSP) routines.

I'm so excited because BLAS and LAPACK are the best (and the most famous) libraries as far as I know. (In case if you've never heard their names, just Google them and you'll understand.) They let you solve simultaneous linear equations (i.e. Ax = b in vector / matrix notation), do fast matrix multiplications, and more.

I'm quite sure that the libraries are available on both PowerPC- and Intel-based Mac's. However, when I look up the "What's new in iOS4" documentation in Xcode, it says that the data types are "not supported on any architecture". When I compare the vecLib Reference for Mac OS X and vecLlib Reference for iOS, I also found that functions are missing in the iOS version.

My question is:
Has anyone compiled any program using these libraries (bignum is my primary area of interest) and run them successfully on a real iPhone device? (Answerers who can demonstrate their actual experience on the librarie(s) are more appreciated.)

Here are the links to the Reference Library:
Accelerate Framework (iOS Reference Library)
vecLib Reference (Mac OS X Reference Library)
vecLib Reference (iOS Reference Library)

Here are official FAQs of BLAS and LAPACK:
BLAS FAQ
LAPACK FAQ

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

策马西风 2024-09-20 14:19:21

尽管我还没有在运输应用程序中使用 Accelerate,但我确实从 Apple 的 中获益匪浅WWDC 2010 会议 202 - “iPhone OS 的加速框架”。如果您对这个框架感兴趣,我强烈建议您观看该视频。

虽然其中许多功能可以在 iPhone 上使用,但尚未全部移植。只有 vDSP、BLAS 和 LAPACK 可在 iOS 4.0 中使用,尽管听起来其他人可能很快就会加入它们。

尽管是为 Mac 编写的,“利用 Accelerate Framework” 文章提供了除了上面列出的资源之外,还对该框架进行了很好的介绍。

Even though I have not yet used Accelerate in a shipping application, I did get a lot out of Apple's WWDC 2010 session 202 - "The Accelerate framework for iPhone OS". If you are interested in this framework, I highly recommend watching that video.

While it is possible to use many of these functions on the iPhone, not all of them have been ported over yet. Only vDSP, BLAS, and LAPACK are available for use in iOS 4.0, although it sounds like others might join them soon.

Although written for the Mac, the "Taking Advantage of the Accelerate Framework" article gives a nice introduction to the framework, in addition to the resources you list above.

呆萌少年 2024-09-20 14:19:21

我已经根据 Yoshimasa Niwa 的项目在 OpenCV 中完成了一些工作:

http://niw.at/articles/2009/03/14/using-opencv-on-iphone/en

他当前的代码使用 Accelerate 框架构建(请参阅自定义补丁)。

I've done some work in OpenCV based on Yoshimasa Niwa's project here:

http://niw.at/articles/2009/03/14/using-opencv-on-iphone/en

His current code builds using the Accelerate framework (see the custom patches).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文