You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The ESP32S3 is a very popular chip from EspressIf. I have successfully ran CNNs with TinyMaix on it, using the standard/portable TinyMaix backend. However, these chips have DSP SIMD instructions that are designed to accelerate neural networks. So it would be very beneficial to support those.
The library is designed to be used as an esp-idf component. But for usage in TinyMaix it might be more practical to directly use the underlying C/asm code that they provide. See for example dspi_dotprod_off_u8_aes3.S in https://github.com/espressif/esp-dsp/tree/master/modules/dotprod/fixed
The text was updated successfully, but these errors were encountered:
The ESP32S3 is a very popular chip from EspressIf. I have successfully ran CNNs with TinyMaix on it, using the standard/portable TinyMaix backend. However, these chips have DSP SIMD instructions that are designed to accelerate neural networks. So it would be very beneficial to support those.
There is official code for using these instructions at https://github.com/espressif/esp-dsp/
It is licensed under Apache 2.0
The benchmarks give an overview of the possible acceleration
https://docs.espressif.com/projects/esp-dsp/en/latest/esp32/esp-dsp-benchmarks.html
It looks that for small input sizes (like 3x3) there is not that much to gain. But for 8x8 or larger, there is a potential of a 10x speedup.
The library is designed to be used as an esp-idf component. But for usage in TinyMaix it might be more practical to directly use the underlying C/asm code that they provide. See for example dspi_dotprod_off_u8_aes3.S in https://github.com/espressif/esp-dsp/tree/master/modules/dotprod/fixed
The text was updated successfully, but these errors were encountered: