2010-08-09 43 views
6

我想我已經在iPhone OS(iOS 4)中找到了一些寶石。

我發現有128位,256位,512位和1024位整數數據類型,由Accelerate Framework提供。此外,Apple還實施了基本線性代數子程序(BLAS),Apple實現LAPACK(線性代數包)和數字信號處理(DSP)子程序。

我很激動,因爲據我所知,BLAS和LAPACK是最好的(也是最有名的)圖書館。 (如果你從未聽過他們的名字,只要Google他們,你就會明白。)他們讓你解決聯立線性方程(即A x = b以向量/矩陣符號),做快速矩陣乘法, 和更多。

我很確定這些庫在基於PowerPC和Intel的Mac上均可用。但是,當我在Xcode中查找「iOS4的新特性」文檔時,它說數據類型「在任何體系結構上都不受支持」。當我比較vecLib Reference for Mac OS XvecLlib Reference for iOS時,我還發現在iOS版本中缺少功能。

我的問題是:
有沒有人編譯使用這些庫(BIGNUM是我主要的興趣區)的任何程序,併成功真正的iPhone設備上運行呢? (誰能夠證明在librarie(S)的實際經驗,解答者是比較欣賞。)

這裏是鏈接到參考庫:
Accelerate Framework (iOS Reference Library)
vecLib Reference (Mac OS X Reference Library)
vecLib Reference (iOS Reference Library)

這裏有BLAS和LAPACK官方常見問題解答:
BLAS FAQ
LAPACK FAQ

iPhone OS上的Bignum,線性代數和數字信號處理(iOS 4)

+2

這不是答案(因此評論),但我寫了圍繞OpenSSL的bignum東西Objective-C包裝。我還沒有試過編譯它的iPhone,但歡迎您來分享它,並貢獻:http://github.com/davedelong/CHMath – 2010-08-09 04:22:09

+0

嗨,戴夫。感謝您的投票! '''我沒有編譯iPhone上的BLAS和LAPACK庫,但似乎** APPLE實現了相同的API **,這就是爲什麼我非常興奮。請參閱上面張貼的「參考資料庫」鏈接。 '''我使用OpenSSL很多,猜測他們也應該有相當不錯的大整數庫!但是由於我對lib/API不熟悉,我不確定它們是否足夠容易使用。在使用圖書館之前,我擔心大量的保姆工作。 ''''我已經訪問了你的GitHub項目,並且當我有時間時會進入更多的細節〜 – 2010-08-09 08:34:25

+0

這個問題提出了類似的問題(雖然不是詳細的形式):http://stackoverflow.com/questions/3398753/ using-the-apple-fft-and-accelerate-framework – 2010-08-09 22:23:00

回答

2

雖然我還沒有使用的運輸應用加速,我確實得到了很多出來的蘋果WWDC 2010 session 202 - 「爲iPhone OS的加速框架」。如果您對此框架感興趣,我強烈建議您觀看該視頻。

儘管可以在iPhone上使用這些功能中的很多功能,但並不是所有功能都已經移植完畢。只有vDSP,BLAS和LAPACK可用於iOS 4.0,儘管聽起來其他人可能很快加入。

雖然是爲Mac編寫的,但"Taking Advantage of the Accelerate Framework"文章除了提供上面列出的資源之外,還對該框架進行了很好的介紹。

+0

感謝您的信息!這正是我困惑的原因!看來,蘋果公司廣告加速框架很多,但它似乎也在某種程度上「在建設中」。我在iPhone模擬器上運行了一些測試,他們似乎沒問題!但是,像往常一樣,模擬器(這是基於Intel的!)在實際設備上並不意味着沒問題。由於我還沒有完成CSR - > App ID流程(尚未有時間理解流程,也不願意不經理解),我在這裏問了這個問題。感謝您的鏈接!有空的時候我會拜訪他們。 – 2010-08-10 15:19:08

+3

只是爲了更新,在iOS5.0加速挑起vForce和vImage。 – 2011-10-24 19:39:51

+1

要再次更新,請在iOS 6.0中添加vMathLib。 – 2013-03-23 14:50:55