Энтузиаст ускорил компьютерное зрение на микроконтроллере за $2 вдвое с помощью SIMD
SIMD-accelerated computer vision on a $2 microcontroller
Автор написал ускоренный детектор особых точек FAST для ESP32-S3, использующий 128-битные SIMD-инструкции чипа. Реализация обрабатывает кадр QVGA (320x240) примерно за 6 мс и вдвое обгоняет эталонную версию — с 5,1 до 11,2 мегапикселя в секунду. По пути пришлось обойти отсутствие невыровненных чтений и сравнений для беззнаковых байтов, а также написать собственный распределитель регистров basm.
В итоге мне удалось повысить пропускную способность детектора признаков FAST примерно на 220% — с 5,1 до 11,2 мегапикселя в секунду в моих тестах.