-
Notifications
You must be signed in to change notification settings - Fork 163
Roadmap
HarmonyHu edited this page Nov 17, 2022
·
5 revisions
This document lists general directions of TPU-MLIR, include principal goals, plans, etc.
- keep regular sync with mlir from project llvm-project.
- continue maintaining high-quality, well-tested and documented modules.
- support AI machine learning frameworks: ONNX, TFLite, Caffe.
- support various neuron network models, such as resnet, yolo, ssd, bert, etc.
- support various chips, especially SOPHGO TPU, such as BM1684X, BM1684, CV18XX, Athena2, etc.
- follow newest MLIR compiler technology, and put it on this project efficently.
- keep high performance and hign accuraccy, especially for INT8 quantization models.
- support various tools to improve development conveniently and efficiently.
gantt
dateformat YYYY-MM
title Plans in 2022 and 2023
section TPU Support
1684X support : done, crit, task_chip, 2022-03, 2022-06
18XX support : active, crit, task_chip, 2022-10, 2023-01
Athena2 support : active, crit, task_chip, 2022-11, 2023-01
1684 support : active, crit, task_chip, 2022-12, 2023-02
section NN Framework Support
ONNX : done, crit, task_NN, 2022-03, 2022-06
TFlite : done, crit, task_NN, 2022-06, 2022-10
Caffe : done, crit, task_NN, 2022-09, 2022-10
ONNX-MLIR : active, crit, task_NN, 2023-05, 2023-08
TORCH-MLIR: active, crit, task_NN, 2023-06, 2023-09
Tensorflow-MLIR: active, crit, task_NN, 2023-07, 2023-10
section Tools
model_runner.py: done, crit, task_tool, 2022-03, 2022-04
npz_tool.py: done, crit, task_tool, 2022-03, 2022-04
run_calibration.py: done, crit, task_tool, 2022-03, 2022-04
bmodel_dis.py: done, crit, task_tool, 2022-06, 2022-09
run_qtable.py: done, crit, task_tool, 2022-10, 2022-11
mlir2onnx.py: active, crit, task_tool, 2022-10, 2023-01
section Functions
layergroup basic: done, crit, task_func, 2022-05, 2022-06
layergroup refine1: done, crit, task_func, 2022-08, 2022-10
layergroup refine2: active, crit, task_func, 2022-10, 2023-01
cpu layer: active, crit, task_func, 2022-10, 2023-01
QAT: active, crit, task_func, 2022-09, 2023-01
dynamic compile: active, crit, task_func, 2022-10, 2023-03
mix precision: active, crit, task_func, 2022-11, 2023-03
mix precision plus: active, crit, task_func, 2022-12, 2023-04
min/max refine: active, crit, task_func, 2022-12, 2023-03
lowering LLVM IR: active, crit, task_func, 2022-12, 2023-03
TFLite op test: active, crit, task_func, 2023-03, 2023-06
section OpenSource
TPU-MLIR: done, crit, task_os, 2022-03, 2022-05
TPU Manual: active, crit, task_os, 2023-03, 2023-05
TPU code: active, crit, task_os, 2023-03, 2023-05
section NN Models Support
Resnet50: done, crit, task_model, 2022-03, 2022-06
Modilenet: done, crit, task_model, 2022-06, 2022-07
SSD: done, crit, task_model, 2022-06, 2022-07
Yolov5: done, crit, task_model, 2022-06, 2022-07
Vgg16: done, crit, task_model, 2022-07, 2022-08
Shufflenet: done, crit, task_model, 2022-07, 2022-08
Squeezenet: done, crit, task_model, 2022-07,2022-08
Efficientnet: done, crit, task_model, 2022-07,2022-08
Mnist: done, crit, task_model, 2022-07, 2022-08
Densenet: done, crit, task_model, 2022-08, 2022-09
Senet: done, crit, task_model, 2022-08, 2022-09
Inception: done, crit, task_model, 2022-08, 2022-09
Yolov3: done, crit, task_model, 2022-08, 2022-09
Resnet50_tflite: done, crit, task_model, 2022-06, 2022-08
Modilenet_tflite: done, crit, task_model, 2022-08, 2022-10
Inception_tflite: active, crit, task_model, 2022-09, 2022-11
Yolov5_tflite: active, crit, task_model, 2022-11, 2022-12
ssd_mobilenet: active, crit, task_model, 2022-12, 2023-01
mobilebert: active, crit, task_model, 2022-12, 2023-01
CHIP | Product |
---|---|
BM1684X | SC7, SE7 |
BM1684 | SC5, SG6, SE6, SE5, SM5 |
CV18XX | CV1838, CV1835, CV1826, CV1825, CV1823, CV1821, CV1820, CV1813H, CV1812H, CV1811H, CV1810H, CV1812C, CV1811C |
Athena2 | on going |