https://github.com/nk-kotsomitis/ingenuity
Ingenuity is designed to benchmark the inference performance of ML models on embedded devices using its own inference engine
https://github.com/nk-kotsomitis/ingenuity
benchmark esp32-s3 tinyml
Last synced: about 1 year ago
JSON representation
Ingenuity is designed to benchmark the inference performance of ML models on embedded devices using its own inference engine
- Host: GitHub
- URL: https://github.com/nk-kotsomitis/ingenuity
- Owner: nk-kotsomitis
- License: gpl-3.0
- Created: 2025-02-24T02:50:31.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-09T04:23:22.000Z (about 1 year ago)
- Last Synced: 2025-03-09T04:25:01.621Z (about 1 year ago)
- Topics: benchmark, esp32-s3, tinyml
- Language: Python
- Homepage:
- Size: 1.18 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

## Introduction
Ingenuity is an optimized inference engine and benchmarking tool for TinyML models on embedded IoT devices.
## Inference Engine
The inference engine is a lightweight, memory-efficient library. All buffers are pre-compiled, avoiding dynamic memory allocation, and it is optimized for high performance while maintaining a minimal, easy-to-use C API.
## Benchmarking
Benchmarking a quantized TFLite model typically involves multiple steps, including building and deploying the model on the device, as well as designing and implementing benchmarking test suites. Ingenuity automates this entire process with a single click, seamlessly bridging the gap between model quantization and benchmarking. Through the Graphical User Interface (GUI), benchmark metrics such as inference latency, memory usage, and quantization accuracy can be easily monitored within seconds. This allows users to benchmark their models quickly and efficiently.
## Supported hardware & ML models
Ingenuity supports quantized TensorFlow Lite ML models based on fully connected feed-forward neural networks. The inference engine is optimized to utilize the AI hardware accelerators and internal memory of the ESP32-S3 microcontroller from Espressif.
For detailed instructions, refer to the [User's Manual](docs/user_manual.pdf).
## Directory structure
π assets β Misc images and files
π docs β Documents
π esp32s3 β ESP-IDF template project
π src β Source code
## Setup
Download the latest release (Ingenuity-v1.0.0.exe) and run itβno installation required.
## Contributing
For detailed guidelines on contributions, please check the [CONTRIBUTING.md](CONTRIBUTING.md) file.
## License
This project is licensed under the **GNU General Public License v3.0**.
See the [LICENSE](LICENSE) file for details.