Apple habla sobre los coprocesadores de movimiento M7 y M8 para el podómetro de iPhone y otras operaciones.
Mi pregunta es ¿Por qué necesitamos un coprocesador de movimiento? ¿Seguramente esto es solo procesamiento de señal digital que el procesador primario masivamente poderoso puede manejar?
iphone
health.app
motion-processor
ojo de halcón
fuente
fuente
Hay algunas razones por las cuales tener un procesador separado es apropiado para esto.
El procesador es para tareas que se pueden ejecutar todo el tiempo, ya sea que esté haciendo algo con su dispositivo o no.
Las tareas que se le pide que hagan son de prioridad crítica, pero probablemente requieren muy poco procesamiento real.
Usabilidad del dispositivo:
Al dividir este trabajo en un procesador separado, significa que los desarrolladores no tienen que preocuparse por la cantidad de procesador principal que se está utilizando. El procesador principal puede no usarse o maximizarse, y no tendrá ningún impacto en el procesamiento de las tareas que asume el coprocesador de movimiento.
En efecto, significa que el uso normal de su dispositivo y el procesamiento de movimiento de fondo nunca interferirán entre sí.
Consumo de energía:
Dado que estas tareas se ejecutan continuamente, colocarlas en un procesador separado de baja potencia también permite que el dispositivo use menos energía. Dado que la duración de la batería es una gran preocupación para muchos usuarios, Apple pensó que era necesario considerar el uso de energía para las funciones siempre activas.
Estas funciones también se pueden implementar de una manera mucho más óptima en un procesador que tiene una tarea muy específica. Considere esto de forma similar a cómo una GPU puede procesar mucho más que una CPU (en la mayoría de los casos) porque está destinada a una tarea específica.
fuente
Lo primero que noté la primera vez que abrí Nike + Move en mi iPhone 5s fue que tenía datos de las dos semanas anteriores más o menos. Creo que el coprocesador de movimiento rastrea y registra constantemente de manera eficiente los datos de su sensor de movimiento y les da a las aplicaciones acceso a esos datos. Esto permite que las aplicaciones recopilen estos datos incluso cuando no están abiertos sin tener que ejecutarse constantemente en segundo plano. La diferencia de procesamiento entre solo recopilar datos de movimiento (y hacerlo en un solo lugar unificado para todas las aplicaciones) y ejecutar una aplicación completa en segundo plano es enorme en términos de uso de la batería.
fuente