ubuntu20.04 tvm 安装教程

ubuntu20.04 tvm 安装教程:

参考:

  1. https://tvm.hyper.ai/docs/install/from_source/

  2. https://blog.csdn.net/wenwen_2020/article/details/134856293

步骤:

  1. 创建容器:docker run -itd --name tvm --gpus=all --ipc=host -p 20322:22 -v /mnt/iro/tt:/home/tt ubuntu:20.04 /bin/bash -c "while true; do echo \'Hello\'; sleep 1000; done"

  2. apt update

apt-get install -y python3 python3-dev python3-setuptools gcc libtinfo-dev zlib1g-dev build-essential libedit-dev libxml2-dev

  1. 安装cmake:

wget https://github.com/Kitware/CMake/releases/download/v3.28.3/cmake-3.28.3.tar.gz

tar -zxvf cmake-3.28.3.tar.gz

apt-get install libssl-dev

./bootstrap

make

make install

ln -s /home/tt/tools/cmake-3.28.3/bin/* /usr/bin/

cmake -version

  1. apt install libncurses5

wget https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.0/clang+llvm-13.0.0-x86_64-linux-gnu-ubuntu-20.04.tar.xz

tar -xvf clang+llvm-13.0.0-x86_64-linux-gnu-ubuntu-20.04.tar.xz

mv clang+llvm-13.0.0-x86_64-linux-gnu-ubuntu-20.04 llvm13

vim /etc/profile

最后添加两行:

export LLVM_HOME=/home/tt/tools/llvm13/bin

export PATH=LLVM_HOME:PATH

source /etc/profile

llvm-as --version

set(USE_LLVM OFF)

改为:

set(USE_LLVM ON) 或者 SET(USE_LLVM /home/tt/tools/llvm13/bin/llvm-config)

set(USE_CUDA OFF)

改为:

set(USE_CUDA ON) 或者 SET(USE_CUDA /cuda的路径)

set(USE_CUDNN OFF) 改为:set(USE_CUDNN ON)

set(USE_GRAPH_EXECUTOR OFF) 改为:set(USE_GRAPH_EXECUTOR ON)

set(USE_PROFILER OFF) 改为:set(USE_PROFILER ON)

cd build

cmake ..

make -j24

vim ~/.bashrc

文件末尾添加这几行

export TVM_HOME=/home/tt/project/tvm

export PYTHONPATH=TVM_HOME/python:TVM_HOME/python/tvm:TVM_HOME/build:TVM_HOME/python/tvm/runtime:$[PYTHONPATH]

注意:

  1. 官方导出TVM_LOG_DEBUG有bug,import tvm时会报错,修改为:
    export TVM_LOG_DEBUG="ir/transform.cc=1,relay/ir/transform.cc=1"

  2. ubuntu20.04的话,注意用13.0.0的llvm,不然会core dump!!!!!

相关推荐
HyperAI超神经15 天前
【TVM 教程】优化大语言模型
人工智能·语言模型·自然语言处理·cpu·gpu·编程语言·tvm
HyperAI超神经2 个月前
【TVM 教程】设置 RPC 系统
开发语言·网络·人工智能·python·网络协议·rpc·tvm
胡乱儿起个名7 个月前
Relay算子注册(在pytorch.py端调用)
c++·人工智能·tvm·编译器·ai编译器
胡乱儿起个名7 个月前
PrimExpr 与 RelayExpr 的区别
人工智能·tvm·编译器·ai编译器
胡乱儿起个名7 个月前
Relay IR的核心数据结构
人工智能·tvm·编译器·ai编译器
胡乱儿起个名7 个月前
《Relay IR的基石:expr.h 中的表达式类型系统剖析》
人工智能·tvm·ai编译器
HyperAI超神经8 个月前
【TVM教程】使用自定义调度规则(Sketch Rule)在 CPU 上自动调度稀疏矩阵乘法
人工智能·深度学习·矩阵·编程·cpu·计算机语言·tvm
HyperAI超神经8 个月前
【TVM教程】使用 TVMC Micro 执行微模型
人工智能·python·深度学习·学习·教程·gpu·tvm
HyperAI超神经10 个月前
【TVM教程】为 ARM CPU 自动调优卷积网络
arm开发·人工智能·python·深度学习·机器学习·tvm·编译器
HyperAI超神经1 年前
【TVM 教程】使用 Tensorize 来利用硬件内联函数
人工智能·深度学习·自然语言处理·tvm·计算机技术·编程开发·编译框架