2010-08-09 19 views
6

Sanırım iPhone OS'de (iOS 4) bazı taşlar buldum.

Accelerate Framework tarafından sağlanan 128 bit, 256 bit, 512 bit ve 1024 bit tamsayı veri türleri olduğunu buldum. Ayrıca Apple'ın Basic Lineer Cebir Alt Programları (BLAS), Apple'ın LAPACK (Lineer Cebir PAKETİ) ve Dijital Sinyal İşleme (DSP) rutinlerini uygulaması da var.

Çok heyecanlıyım çünkü BLAS ve LAPACK bildiğim kadarıyla en iyi (ve en ünlü) kütüphaneler. (Eğer isimlerini hiç duymamış olsaydınız, sadece Google onları anlar ve anlarsınız.) Eşzamanlı doğrusal denklemleri çözmenize izin verirler (örneğin, A x b vektör/matris gösterimi), hızlı matris çarpımları yaparlar. , ve dahası.

Kütüphaneler hem PowerPC hem de Intel tabanlı Mac'lerde kullanılabilir olduğundan eminim. Ancak, Xcode'daki "iOS4'teki yenilikler" dokümanlarına baktığımda, veri türlerinin "herhangi bir mimaride desteklenmediğini" söylüyor. vecLib Reference for Mac OS X ve vecLlib Reference for iOS'u karşılaştırdığımda, iOS sürümünde işlevlerin eksik olduğunu da gördüm.

Sorum şu:
herkes bu kütüphaneleri (bignum ilgi birincil alandır) kullanarak herhangi bir program derlenmiş ve gerçek bir iPhone aygıtta başarıyla kaçmış mıydı? (Librarie (ler) gerçek deneyimini göstermek Yanıt Verenler daha takdir değildir.) İşte

Referans Kütüphanesine bağlantılar vardır:

Accelerate Framework (iOS Reference Library)
vecLib Reference (Mac OS X Reference Library)
vecLib Reference (iOS Reference Library) İşte

vardır BLAS ve LAPACK'in resmi SSS'ları:
BLAS FAQ
"IPhone OS için hızlandırın çerçeve" - ​​Henüz bir kargo uygulamasında hızlandırın kullanmadıysanız bile

Bignum, Lineer Cebir ve Dijital Sinyal İşleme, iPhone OS'de (iOS 4)

+2

Bu yanıt değil (bu nedenle yorum) ancak OpenSSL'nin bignum öğelerini etrafında bir Objective-C sarmalayıcı yazdım.IPhone için derlemeyi denemedim, ancak bunu çatallatıp katkıda bulunabilirsiniz: http://github.com/davedelong/CHMath –

+0

Merhaba, Dave. Oyunuz için teşekkürler! // // iPhone'daki BLAS ve LAPACK kütüphanelerini derlemiyorum, fakat ** APPLE SAME API'NIN UYGULANMASI gibi görünüyor ve bu yüzden çok heyecanlıyım. Lütfen yukarda yayınladığım "Referans Kitaplığı" bağlantılarına bakın. // // OpenSSL'i çok kullanıyorum ve onlar da oldukça iyi büyük tamsayı kütüphanelerine sahip olmalarını tahmin ediyorum! Ama lib/API'ye aşina olmadığımdan, kullanacak kadar kolay olup olmadığından emin değilim. Bir kütüphane kullanmadan önce bebek bakıcılığı yapmaktan korkuyorum. '//' GitHub projenizi ziyaret ettim ve zamanım olduğunda daha fazla ayrıntıya gireceğim ~ –

+0

Bu soru benzer bir şey sorar (bir formda detaylı olmamakla birlikte): http://stackoverflow.com/questions/3398753/ -the-apple-fft-ve-accelerate-framework kullanarak –

cevap

2

, ben Apple'ın WWDC 2010 session 202 üzerinden bir sürü aldım. Bu çerçeveyle ilgileniyorsanız, bu videoyu izlemenizi kesinlikle öneririz.

iPhone'da bu işlevlerin çoğunu kullanmak mümkün olsa da, bunların tümü henüz taşınmamış. IOS 4.0'da kullanmak için yalnızca vDSP, BLAS ve LAPACK kullanılabilir, ancak diğerleri yakında onlara katılabileceği gibi görünür.

Mac için yazılmış olsa da, "Taking Advantage of the Accelerate Framework" makalesi, yukarıda listelediğiniz kaynaklara ek olarak, çerçeveye güzel bir giriş sağlar.

+0

Bilgileriniz için teşekkürler! Tam da bu yüzden şaşırıyorum! Apple'ın Accelerate Framework'ü çokça tanıttığı görülüyor, ancak bir şekilde "yapım aşamasında" gibi görünüyor. IPhone Simulator üzerinde bazı testler yaptım ve iyi görünüyorlardı! Ancak, her zaman olduğu gibi, simülatördeki (Intel tabanlı!) Tamam, gerçek cihazda tamam anlamına gelmez. Henüz CSR -> Uygulama Kimliği sürecini geçmediğim için (henüz süreci anlamak için zamanınız yok ve bunu anlamaya gerek yok), bu soruyu burada sordum. Bağlantılarınız için teşekkürler! Zamanım olduğunda onları ziyaret edeceğim. –

+3

Sadece güncellemek için, iOS5.0 Accelerate vForce ve vImage'ı topladı. –

+1

Yeniden güncellemek için, iOS 6.0'da vMathLib eklenmiştir. –