An open API service indexing awesome lists of open source software.

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

Awesome Lists containing this project

README

          


ingenuity.




![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)

## 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.




software_screenshot


## 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.