Core ML Model Prediction in 120 FPS faster than 60 FPS

Hi, I found when continuously predicting with the same Core ML model in 120 FPS will be faster than in 60 FPS.

I use Macbook Pro M2 and turn on ProMotion to run Core ML model prediction with a 120 FPS video, the average prediction time is 7.46ms as below:

But when I turn off ProMotion, set 60 Hz refresh rate, and run Core ML model prediction with a 60 FPS video, the average prediction time is 10.91ms as below:

What could be the technical explanation for these results? Is there any documentation or technical literature that addresses this behavior?

Hello @tim_yao_18,

Thanks for the question!

There are a lot of possible explanations for the behavior you have observed here. My question to you is, is this difference negatively impacting your app in some way? 10.91ms is within your 60fps frame-rate.

I notice that each time when calling CoreML predict, the processing time varies, and the difference can exceed 5ms. Is this normal?

Additionally, I've observed that when P-CPU utilization increases, Neural Engine utilization also increases, which in turn reduces the prediction time. Is this behavior also normal?

Core ML Model Prediction in 120 FPS faster than 60 FPS
 
 
Q