2. 开发环境配置
本章介绍开发环境配置, 代码在docker中编译和运行。
2.1. 代码下载
代码路径: https://github.com/sophgo/tpu-mlir
克隆该代码后, 需要在Docker中编译。参考下文配置Docker。
2.2. Docker配置
TPU-MLIR在Docker环境开发, 配置好Docker就可以编译和运行了。
从 DockerHub https://hub.docker.com/r/sophgo/tpuc_dev 下载所需的镜像:
$ docker pull sophgo/tpuc_dev:v2.2
如果是首次使用Docker, 可执行下述命令进行安装和配置(仅首次执行):
1$ sudo apt install docker.io
2$ sudo systemctl start docker
3$ sudo systemctl enable docker
4$ sudo groupadd docker
5$ sudo usermod -aG docker $USER
6$ newgrp docker
确保安装包在当前目录, 然后在当前目录创建容器如下:
$ docker run --privileged --name myname -v $PWD:/workspace -it sophgo/tpuc_dev:v2.2
# myname只是举个名字的例子, 请指定成自己想要的容器的名字
注意TPU-MLIR工程在docker中的路径应该是/workspace/tpu-mlir
2.3. ModelZoo(可选)
TPU-MLIR中自带yolov5s模型, 如果要跑其他模型, 需要下载ModelZoo, 路径如下:
https://github.com/sophgo/model-zoo
下载后放在与tpu-mlir同级目录, 在docker中的路径应该是/workspace/model-zoo
2.4. 代码编译
在docker的容器中, 代码编译方式如下:
$ cd tpu-mlir
$ source ./envsetup.sh
$ ./build.sh
回归验证, 如下:
# 本工程包含yolov5s.onnx模型, 可以直接用来验证
$ pushd regression
$ ./run_model.sh yolov5s
$ popd
如果要验证更多网络, 需要依赖model-zoo, 回归时间比较久。
操作如下: (可选)
# 执行时间很长, 该步骤也可以跳过
$ pushd regression
$ ./run_all.sh
$ popd