2010-08-09 10 views
6

creo que he encontrado algunas joyas en el iPhone OS (iOS 4).

Encontré que hay tipos de datos enteros de 128 bits, 256 bits, 512 bits y 1024 bits, proporcionados por el Accelerate Framework. También están la implementación de Apple de los Subprogramas de Algebra Lineal Básica (BLAS), la implementación de Apple de las rutinas LAPACK (Linear Algebra PACKage) y Digital Signal Processing (DSP).

Estoy tan emocionada porque BLAS y LAPACK son los mejores (y el más famoso) bibliotecas por lo que yo sé. (En caso si usted nunca ha oído sus nombres, sólo Google ellos y vas a entender.) Se permiten resolver ecuaciones lineales simultáneas (es decir Un x = b en el vector/matriz de notación), hacer multiplicaciones de matrices rápidas , y más.

estoy seguro de que las bibliotecas están disponibles tanto en PowerPC como Mac basado en Intel de. Sin embargo, cuando busco la documentación "Lo nuevo en iOS4" en Xcode, dice que los tipos de datos "no son compatibles con ninguna arquitectura". Cuando comparo el vecLib Reference for Mac OS X y vecLlib Reference for iOS, también encontré que faltan funciones en la versión de iOS.

Mi pregunta es:
Alguien ha compilado usando cualquier programa de estas bibliotecas (bignum es mi principal área de interés) y ejecutarlos con éxito en un dispositivo iPhone real? (Usuarios que responden que puedan demostrar su experiencia real en el Librarie (s) son más apreciados.)

Aquí están los enlaces a la Biblioteca de Referencia:
Accelerate Framework (iOS Reference Library)
vecLib Reference (Mac OS X Reference Library)
vecLib Reference (iOS Reference Library)

aquí están Preguntas frecuentes oficiales de BLAS y LAPACK:
BLAS FAQ
LAPACK FAQ

Bignum, Álgebra Lineal y procesamiento de señal digital en el iPhone OS (iOS 4)

+2

Esto no es una respuesta (de ahí el comentario) pero escribí un contenedor de Objective-C alrededor de las cosas bignum de OpenSSL.No he intentado compilarlo para iPhone, pero puedes copiarlo y contribuir: http://github.com/davedelong/CHMath –

+0

Hola, Dave. ¡Gracias por tu voto! '//' No estoy compilando las bibliotecas BLAS y LAPACK en el iPhone, pero parece que ** APPLE HA IMPLEMENTADO LA MISMA API **, y es por eso que estoy muy emocionado. Por favor, consulte los enlaces de "Biblioteca de referencia" que publiqué arriba. '//' ¡Utilizo mucho OpenSSL y supongo que también deberían tener bibliotecas de enteros grandes y buenas! Pero como no estoy familiarizado con la API lib /, no estoy seguro de si son lo suficientemente fáciles de usar. Tengo miedo de toneladas de trabajo de niñera antes de usar una biblioteca. '//' Visité su proyecto GitHub y entraré en más detalles cuando tenga tiempo ~ –

+0

Esta pregunta requiere algo similar (aunque no en forma tan detallada): http://stackoverflow.com/questions/3398753/ using-the-apple-fft-and-accelerate-framework –

Respuesta

1

que he hecho algunos trabajos en OpenCV basado en el proyecto de Yoshimasa Niwa aquí:

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

su código actual construye utilizando el marco Acelerar (ver los parches personalizados).

+0

Muchas gracias por su información ^.^Agradable ~ –

2

A pesar de que todavía no he utilizado en una aplicación de acelerar el envío, lo hice obtener una gran cantidad de de Apple WWDC 2010 session 202 - "El marco Acelerar para iPhone OS". Si está interesado en este marco, le recomiendo ver ese video.

Si bien es posible utilizar muchas de estas funciones en el iPhone, no todos ellos se han portado todavía. Solo vDSP, BLAS y LAPACK están disponibles para iOS 4.0, aunque parece que otros se les unirán pronto.

Aunque está escrito para Mac, el artículo "Taking Advantage of the Accelerate Framework" ofrece una buena introducción al marco, además de los recursos que enumera arriba.

+0

¡Gracias por su información! ¡Es exactamente por eso que estoy desconcertado! Parece que Apple anuncia mucho el Accelerate Framework, pero también parece que de alguna manera está "en construcción". He realizado algunas pruebas en el simulador de iPhone, ¡y parecían estar bien! Pero, como siempre, está bien en el simulador (¡que está basado en Intel!) No significa que esté bien en el dispositivo real. Dado que aún no he pasado por el proceso de identificación de aplicaciones (CSR) -> App ID (aún no tengo tiempo para entender el proceso y no estoy dispuesto a pasar por ello sin entenderlo), hice esta pregunta aquí. ¡Gracias por tus enlaces! Los visitaré cuando tenga tiempo. –

+3

Solo para actualizar, en iOS5.0 Acelerar recogido vForce y vImage. –

+1

Para actualizar nuevamente, en iOS 6.0, se ha agregado vMathLib. –

Cuestiones relacionadas