官方安装教程:https://tvm.hyper.ai/docs/install/from_source
安装环境配置信息:
system:ubuntu20.04
python:3.8.10
GCC:9.4.0
cmake:3.16.3
CUDA version:12.0
一、下载TVM源码
github下载地址:
https://github.com/apache/tvm
二、安装依赖库
这里直接参照官方给的命令执行:
sudo apt-get update
sudo apt-get install -y python3 python3-dev python3-setuptools gcc libtinfo-dev zlib1g-dev build-essential cmake libedit-dev libxml2-dev
三、下载LLVM
如果需要用TVM部署到CPU设备上,则必须装LLVM;
这里我选择的是LLVM官网下载预编译好的源码方式:
官网:https://releases.llvm.org/download.html
在这里找自己需要的版本下载,TVM官方安装教程提示安装的LLVM版本应不低于4.0,所以在此处找4.0以上的版本即可;
这里我的系统是ubuntu20.04版本,所以就在任意一个版本中找找看是否有支持20.04系统的,这里我在11.0.0中找到,如下图,点击下载(不是点后面的.sig):
下载解压后的文件:
四、修改TVM目录下config.cmake 文件
首先进入tvm目录下:
mkdir build
cp cmake/config.cmake build/
cd build
vim config.cmake
由于我准备在带有CUDA环境的设备上做部署,所以这里我将set(USE_CUDA OFF)改为set(USE_CUDA ON):
使用其他环境同理改成ON;
下面修改LLVM部分:
将set(USE_LLVM OFF)改成set(USE_LLVM /home/xs11/wangx/clang+llvm-11.0.0-x86_64-linux-gnu-ubuntu-20.04/bin/llvm-config);后面的路径为指定刚才下载的LLVM包中bin/路径下的llvm-config。
五、编译TVM
执行:
cd build
cmake ..
make -j4
编译成功的样子
六、添加python环境变量
在python中使用tvm,需要事先添加好环境变量才能正常import;
执行:
vim ~/.bashrc
在文件结尾添加:
export TVM_HOME=/home/xs11/wangx/tvm
export PYTHONPATH=$TVM_HOME/python:${PYTHONPATH}
其中/home/xs11/wangx/tvm 路径根据自己的实际路径修改为自己的tvm的home路径;
修改完成保存退出;
然后执行:
source ~/.bashrc
生效环境变量;
七、验证
安装完毕后验证安装的正确性;
执行:
python3
在中断进入python的命令行界面,执行:
import tvm
我这边提示:
显示缺少decorator模块,安装即可:pip install decorator
安装完成后重新import,然后执行
print(tvm.__version__)
如下,显示出版本号即验证成功;