From OpenMV’s point of view I agree the M7 core is probably the best place for your firmware as it is faster and almost has as much memory as the Nan0o 33 BLE, but from an Arduino users point of view having options is always better than no options. I believe the M7 core is faster but my results suggest that the M4 core can store a larger Machine Learning model by quite a bit. See image of several boards I tested.
Link to higher resolution image: my-examples-for-the-arduino-portentaH7/crashTest04.png at master · hpssjellis/my-examples-for-the-arduino-portentaH7 · GitHub
If the image is hard to understand the M7 core could run 14 x 100 node, dense layers ( model_tflite_len = 534,748 ) whereas the M4 core ran 20 x 100 node, dense layers ( model_tflite_len = 780,148 ) in a multilayer minimally trained neural network. Those few extra layers might be the difference between a big model running and not working at all. No rush, but to have the option to use either core might be very useful in the future.
Another bonus for Arduino users is that having OpenMV on the M4 core, would mean that the user experience on the PortentaH7 would be as normal as possible just with RPC communication with the Vision Shield. Would be very easy even for beginners to work with the Portenta Vision Shield.