2010-08-09 11 views
6

Myślę, że znalazłem kilka klejnotów w systemie iPhone OS (iOS 4).

Znalazłem 128-bitowy, 256-bitowy, 512-bitowy i 1024-bitowy typ danych liczbowych, dostarczony przez Accelerate Framework. Istnieją również wdrożenia Apple Basic Podprogramy Algebra Basic Line (BLAS), wdrożenie przez Apple procedur LAPACK (Linear Algebra PACKage) i Digital Signal Processing (DSP).

Jestem bardzo podekscytowany, ponieważ BLAS i LAPACK są najlepszymi (i najbardziej znanymi) bibliotekami, o ile wiem. (W przypadku, gdy nigdy nie słyszałeś ich nazw, po prostu je Google, a zrozumiesz.) Pozwalają ci rozwiązywać równoczesne równania liniowe (tj. A x = b w notacji wektor/macierz), czy szybkie mnożenie macierzy , i więcej.

Jestem pewien, że biblioteki są dostępne zarówno na komputerach Mac z procesorami PowerPC, jak i Intel. Jednak kiedy sprawdzam dokumentację "Co nowego w iOS4" w Xcode, to mówi ona, że ​​typy danych nie są "obsługiwane w żadnej architekturze". Kiedy porównałem modele vecLib Reference for Mac OS X i vecLlib Reference for iOS, odkryłem również, że brakuje funkcji w wersji na iOS.

Moje pytanie brzmi:
ktoś dowolny program skompilowany przy użyciu tych bibliotek (bignum jest moim głównym obszarem zainteresowania) i uruchomić je z powodzeniem na rzeczywistym urządzeniu iPhone? (Główni odpowiadający którzy mogą wykazać ich rzeczywiste doświadczenie na librarie (s) są bardziej doceniane.)

Oto linki do biblioteki Reference:
Accelerate Framework (iOS Reference Library)
vecLib Reference (Mac OS X Reference Library)
vecLib Reference (iOS Reference Library)

Oto oficjalne FAQ firmy BLAS i LAPACK:

LAPACK FAQ

Bignum, Algebra liniowa i cyfrowe przetwarzanie sygnału w systemie iPhone OS (iOS 4)

+2

To nie jest odpowiedź (stąd komentarz), ale napisałem o Objective-C wokół binarnych rzeczy OpenSSL.Nie próbowałem kompilować go na iPhone'a, ale możesz go rozwidlić i dodać: http://github.com/davedelong/CHMath –

+0

Cześć, Dave. Dziękuję za głosowanie! '//' Nie kompiluję bibliotek BLAS i LAPACK na iPhonie, ale wygląda na to, że ** APPLE ZOSTAŁ WDROŻONY TE SAME API ** i dlatego jestem bardzo podekscytowany. Zapoznaj się z linkami "Biblioteki referencyjnej" zamieszczonymi powyżej. '//' Używam OpenSSL i domyślam się, że powinny one mieć całkiem dobre, duże biblioteki z całkowitymi liczbami! Ale ponieważ nie jestem zaznajomiony z lib/API, nie jestem pewien, czy są one dość łatwe w użyciu. Obawiam się, że przed rozpoczęciem korzystania z biblioteki pracuję nad opieką nad dziećmi. '//' Odwiedziłem twój projekt GitHub i przejdę do więcej szczegółów, kiedy mam czas ~ –

+0

To pytanie prosi o coś podobnego (choć nie w formie szczegółowej): http://stackoverflow.com/questions/3398753/ using-the-apple-fft-and-accelerate-framework –

Odpowiedz

2

Mimo, że nie zostały jeszcze wykorzystane w aplikacji Przyspieszenie żeglugi, zrobiłem uzyskać wiele z Apple WWDC 2010 session 202 - „Ramy Accelerate dla iPhone OS”. Jeśli interesują Cię te ramy, gorąco polecam obejrzenie tego filmu.

Chociaż istnieje możliwość korzystania z wielu z tych funkcji na telefonie iPhone, nie wszystkie zostały jeszcze przeniesione. Tylko vDSP, BLAS i LAPACK są dostępne do użytku w iOS 4.0, chociaż wydaje się, że inni mogą do nich dołączyć wkrótce.

Chociaż napisany dla komputerów Mac, artykuł "Taking Advantage of the Accelerate Framework" stanowi miłe wprowadzenie do struktury, oprócz zasobów wymienionych powyżej.

+0

Dziękujemy za informacje! Właśnie dlatego jestem zagadkowy! Wygląda na to, że Apple bardzo dużo reklamuje Accelerate Framework, ale wydaje się też, że jest w jakiś sposób "w budowie". Przeprowadziłem kilka testów na symulatorze iPhone'a i wydawało się, że są w porządku! Ale, jak zwykle, w porządku na symulatorze (który jest oparty na Intelu!) Nie oznacza, że ​​urządzenie jest w porządku. Ponieważ nie przeszedłem jeszcze procesu CSR -> Identyfikator aplikacji (nie mam jeszcze czasu, aby zrozumieć ten proces i nie chcę go przejrzeć bez zrozumienia), zadałem to pytanie tutaj. Dzięki za Twoje linki! Odwiedzę ich, kiedy będę mieć czas. –

+3

Wystarczy zaktualizować, w iOS5.0 Przyspieszenie podniósł vForce i vImage. –

+1

Aby zaktualizować ponownie, w iOS 6.0 dodano vMathLib. –

Powiązane problemy