Apple - Why do we need a motion coprocessor?

You have implied the reason in "the massively powerful primary processor". It takes electrical power to run the computer processing. Thus, if you need something to be on all the time, you want a smaller processor than the main one to save battery power.


There are a few reasons why having a separate processor is appropriate for this.

The processor is for tasks that can be run all of the time, whether you're doing something with your device or not.

The tasks it's being asked to do are of critical priority, but likely require very little actual processing.

Device Usability:

By splitting this work to a separate processor, it means that developers don't have to concern themselves about how much of the main processor is being used. The main processor can be unused or maxed out, and it will have no impact on the processing of tasks that the motion coprocessor takes on.

In effect, it means that your normal device usage and the background motion processing will never interfere with each other.

Power Usage:

Since these tasks are being run continuously, putting them on a separate low-power processor also allows for the device to use less power. With battery life being a very large concern for a lot of users, Apple thought it was necessary to consider the power usage for always on functions.

These functions can also be implemented in a much more optimal way on a processor that has a very specific task. Consider this similar to how a GPU is able to process much more than a CPU (in most cases) because it's targeted for a specific task.