NNToolChain 安装说明
Compiler部分离线运行在X86平台,该平台不用包含BM168x产品。 Runtime部分运行则在PCIE模式、SOC模式和CMODEL模式下。
PCIE模式:SDK运行于X86平台,BM168x作为PCIE接口的深度学习计算加速卡存在;
SOC模式:SDK独立运行于BM168x平台,支持通过千兆以太网与其他设备连接;
CMODEL模式:SDK运行在X86平台,并脱离BM168x运行,用于在没有芯片的模式下进行软件仿真。
在 docker 环境使用工具链软件,最新版本的 docker 可以参考 官方教程 进行安装。安装完成后,执行下面的脚本将当前用户加入 docker 组,获得 docker 执行权限。
sudo usermod -aG docker $USER
newgrp docker
从官网上下载tpu-nntc的压缩包,命名如 tpu-nntc_vx.y.z-<hash>-<date>.tar.gz
mkdir tpu-nntc
# 将压缩包解压到tpu-nntc
tar zxvf tpu-nntc_vx.y.z-<hash>-<date>.tar.gz --strip-components=1 -C tpu-nntc
tpu-nntc使用的docker是 sophgo/tpuc_dev:latest, docker镜像和tpu-nntc有绑定关系,少数情况下有可能更新了tpu-nntc,需要新的镜像
cd tpu-nntc
# 进入docker,如果当前系统没有对应镜像,会自动从docker hub上下载
# 将tpu-nntc的上一级目录映射到docker内的/workspace目录
# 这里用了8001到8001端口映射,之后在使用ufw可视化工具会用到
# 如果端口已经占用,请更换其他未占用端口,后面根据需要更换进行调整
docker run -v $PWD/..:/workspace -p 8001:8001 -it T
# 此时已经进入docker,并在/workspace目录下
# 下面初始化软件环境
cd /workspace/tpu-nntc
source scripts/envsetup.sh
其他docker初始化方式:
如果是离线环境,可以先提前下载,然后导入到目标机上,命令如下:
# 在可以联网的机器上, 保存镜像 docker pull sophgo/tpuc_dev:latest docker save sophgo/tpuc_dev:latest -o sophon_tpuc_dev.docker # 将sophon_tpuc_dev_docker.tar复制到目标机器上后 docker load -i sophon_tpuc_dev.docker此外,tpu-nntc在scripts目录提供了docker_setup.sh脚本, 供参考和方便基本使用,实际使用中可根据需求自行管理。使用方法如下:
# docker_setup.sh 后面参数来指定哪个目录作为工作目录,映射到docker里的/workspace # 这里用 tpu-nntc 的上一级目录 scripts/docker_setup.sh .. # 会输出以下信息,如果8001端口占用,会自动选择其他未占用端口 # ... # OPEN 'http://localhost:8001' IN WEB BROWSER WHEN 'python3 -m ufw.tools.app' RUNNING IN DOCKER