Skip to content

Releases: espressif/esp-dl

ESP-DL Release v3.0.0

20 Dec 11:12
Compare
Choose a tag to compare

We are excited to introduce ESP-DL v3.0.0 , a lightweight and efficient neural network inference framework tailored for ESP series chips. This release brings significant enhancements and new features, making it easier than ever to develop AI applications on Espressif's System on Chips (SoCs). However, please be aware that v3.0.0 is not compatible with v2.0. Below are the key updates and improvements in this release:


Key Features and Improvements

ESP-DL Standard Model Format

Introduced a new model format similar to ONNX but optimized for ESP-DL, using FlatBuffers instead of Protobuf. This format supports zero-copy deserialization and has a file extension of .espdl.

Efficient Operator Implementation

Enhanced support by ESP32-S3 and ESP32-P4 PIE (Processor Instruction Extensions) for common AI operators such as Conv, Gemm, Add, and Mul.

Static Memory Planner

A new memory planner automatically allocates layers to the optimal memory location based on the user-specified internal RAM size, ensuring both efficient memory usage and faster overall performance.

Dual-Core Scheduling

Introduced automatic dual-core scheduling to fully utilize the dual-core computing power of ESP chips. Currently, Conv2D and DepthwiseConv2D operators support dual-core scheduling.

8-bit LUT Activation

All activation functions except ReLU and PReLU are implemented using an 8-bit Look-Up Table (LUT) method to accelerate inference. This allows for flexible activation function usage while maintaining consistent computational complexity.


Supported Models


Supported Operators

The ESP-DL operator interface is aligned with ONNX. The opset 13 is recommended to export ONNX.
Currently, the following 31 operators have been implemented and tested. Some operators do not implement all functionalities and attributes. Please refer to the description of each operator or test cases for details.

Operator int8 int16 Description
Add(ESP-DL)(ONNX) Support up to 4D
AveragePool(ESP-DL)(ONNX)
Clip(ESP-DL)(ONNX)
Concat(ESP-DL)(ONNX)
Conv(ESP-DL)(ONNX) Groups only support 1 or input_channels
Div(ESP-DL)(ONNX) Support up to 4D
Exp(ESP-DL)(ONNX)
Flatten(ESP-DL)(ONNX)
Gemm(ESP-DL)(ONNX)
GlobalAveragePool(ESP-DL)(ONNX)
HardSigmoid(ESP-DL)(ONNX)
HardSwish(ESP-DL)(ONNX)
LeakyRelu(ESP-DL)(ONNX)
Log(ESP-DL)(ONNX)
MatMul(ESP-DL)(ONNX) Support up to 4D
MaxPool(ESP-DL)(ONNX)
Mul(ESP-DL)(ONNX) Support up to 4D
Pad(ESP-DL)(ONNX) Do not support wrap mode
PRelu(ESP-DL)(ONNX)
Reshape(ESP-DL)(ONNX)
Resize(ESP-DL)(ONNX) Only support nearest and do not support roi
Sigmoid(ESP-DL)(ONNX)
Slice(ESP-DL)(ONNX)
Softmax(ESP-DL)(ONNX) Dtype of output is float32
Split(ESP-DL)(ONNX)
Sqrt(ESP-DL)(ONNX)
Squeeze(ESP-DL)(ONNX)
Sub(ESP-DL)(ONNX) Support up to 4D
Tanh(ESP-DL)(ONNX)
Transpose(ESP-DL)(ONNX)
Unsqueeze(ESP-DL)(ONNX)

Important Note

  • **v3.0.0 is not backward compatib...
Read more

release/v2.0

31 Jul 07:37
Compare
Choose a tag to compare

ESP-DL Release v2.0

We're excited to announce the release of ESP-DL v2.0! This is a significant update which includes new features and improvements over the previous version.

New Features

Introduction of TVM: In this new release, we have introduced support for TVM. TVM is an open-source machine learning compiler stack that aims to enable efficient deployment of machine learning models on a variety of hardware platforms. This integration significantly streamlines the process of deploying models, providing a seamless workflow from training to deployment. Now, you can easily deploy your models trained with popular platforms such as TensorFlow and PyTorch using TVM, improving efficiency and flexibility.

New Documentation System with ESP-Docs: We're happy to announce that we've adopted the ESP-Docs system to build our documentation. This new system provides an improved user experience and allows us to maintain up-to-date and comprehensive documentation. We're confident that this change will make it even easier for users to find the information they need. You can now view our documentation on the web at ESP-DL User Guide.

Feedback

We hope you find the new TVM integration and updated documentation system helpful in improving your model deployment workflows. If you have any questions or encounter any issues, please submit a issue.

Thank you for supporting ESP-DL!