477: One Thousand New Instructions
Kwabena Agyeman joined Chris and Elecia to talk about optimization, cameras, machine learning, and vision systems.
Kwabena is the head of OpenMV (openmv.io), an open source and open hardware system that runs machine learning algorithms on vision data. It uses MicroPython as a development environment so getting started is easy.
Their github repositories are under github.com/openmv. You can find some of the SIMD details we talked about on the show:
150% faster: openmv/src/omv/imlib/binary.c
1000% faster: openmv/src/omv/imlib/filter.c
Double Pumping: openmv/src/omv/modules/py_tv.c
Kwabena has been creating a spreadsheet of different algorithms in camera frames per second (FPS) for Arm processors: Performance Benchmarks - Google Sheets. As time moves on, it will grow. Note: this is a link on the OpenMV website under About. When M55 stuff hits the market expect 4-8x speed gains.
The OpenMV YouTube channel is also a good place to get more information about the system (and vision algorithms).
Kwabena spoke with us about (the beginnings of) OpenMV on Embedded 212: You Are in Seaworld.
Elecia is giving a free talk for O'Reilly to advertise her Making Embedded Systems, 2nd Edition book. The talk will be an introduction to embedded systems, geared towards software engineers who are suddenly holding a device and want to program it. The talk is May 23, 2024 at 9:00 AM PDT. Sign up here. A video will be available afterward for folks who sign up.