Centos7.6配置TVM环境

1.基础环境配置

由于我使用的centos环境是个空环境,什么都么有,所以需要装的东西多一点;

(1) 安装gcc

由于centos7环境默认gcc版本是gcc4.8,但是在使用tvm的时候有时候会用到C++17的规则,所以需要将gcc升级版本,具体升级到多少呢,这里踩了很多坑,最终确定版本gcc-9.3.1;因为后面我们安装LLVM是通过源码编译的方式安装的,其他版本会出现莫名奇妙的错误;
这里采用在线升级的方法:

yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
// 永久启用gcc9
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile

上述步骤走完即完成gcc9的升级。

(2)安装cmake

TVM教程中已经提示开发过程中的cmake版本需要 ≥3.18,所以这里我选择安装cmake-3.26.3版本,其他版本亦可;
下载cmake安装包:https://cmake.org/download/
或者:

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

安装:

tar -zxvf cmake-3.26.3.tar.gz
cd cmake-3.26.3
./bootstrap && make -j8 && sudo make install
ln -s /usr/local/bin/cmake /usr/bin/
cmake --version

除此之外还有些安装包需要安装,直接yum在线安装即可:

sudo yum update
sudo yum install -y python-devel ncurses-compat-libs zlib-devel cmake libedit-devel libxml2-devel

2.安装LLVM

由于我使用TVM主要基于CPU的硬件环境,所以我就只安装LLVM。如果还需要在nvidia GPU,则需要再安装CUDA,或者其他硬件对应的后端;
TVM教程中有很多种LLVM的安装方法;我这里选择下载源码编译安装的方式(其它方式都尝试了,均没法正常使用),然后在tvm的config.cmake里面直接开启set(USE_LLVM ON),让它自己寻找LLVM。
安装过程:

wget https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1/llvm-project-13.0.1.src.tar.xz
tar vxf llvm-project-13.0.1.src.tar.xz
cd llvm-project-13.0.1.src
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_RTTI=ON -DLLVM_ENABLE_PROJECTS="clang" -G "Unix Makefiles" ../llvm
make -j8
make install

安装完成;

3.安装TVM

下载源码:

git clone --recursive https://github.com/apache/tvm tvm
mkdir build
cp cmake/config.cmake build

接下来修改复制过来的config.cmake文件:
根据需要开启后端,因为前面我已经在系统里安装了LLVM,我这里只修改了set(USE_LLVM OFF)为set(USE_LLVM ON),让其自己搜索LLVM,其他部分不动;修改完编译:

cmake ..
make -j8

没有报错则编译成功;
然后添加下python的环境变量

//修改路径
export PYTHONPATH=/path-to-tvm-unity/python:$PYTHONPATH

完成后验证;验证按照TVM官方教程验证即可。

如果需要使用tvm python编译模型,则需要事先安装好python的依赖:

pip install numpy decorator attrs
pip install typing-extensions psutil scipy
pip install tornado
pip install xgboost
  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: CentOS 7.6是一款广泛使用的操作系统,需要配置yum源才能访问软件包。以下是如何配置yum源的步骤: 1.备份初始yum源 在配置yum源之前,我们需要先备份初始yum源。运行以下命令进行备份: # mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 2.下载新的yum源 我们可以从CentOS官方网站下载最新的yum源。运行以下命令: # wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 3.更新yum源 运行以下命令更新yum源: # yum clean all # yum makecache 4.测试yum源 运行以下命令测试yum源是否配置成功: # yum update 如果yum源配置成功,将会显示可用更新。 总之,配置yum源可以大大提高软件包的获取速度和安全性。以上是CentOS 7.6配置yum源的步骤,如果您按照上述步骤操作,可以顺利完成yum源的配置。 ### 回答2: CentOS 7.6是一款流行的Linux操作系统,yum源是在CentOS 7.6上安装软件所必需的。Yum是一款自动化的软件包管理工具它依赖于配置正确的yum源,下面介绍如何配置CentOS 7.6的yum源。 第一步,备份系统默认的yum源配置文件 cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak 第二步,下载阿里云镜像文件CentOS-Base.repo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 第三步,下载EPEL源 wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo 第四步,清除yum缓存 yum clean all 第五步,更新yum缓存 yum makecache 到此为止,yum源已经配置完毕。现在可以直接使用yum命令安装 CentOS7 中的软件了。 总之,yum是一款自动化的软件包管理工具,用于安装和管理CentOS7操作系统下的软件,配置yum源是必要的。通过以上步骤我们如何来配置CentOS 7.6的yum源,我们可以使用yum命令安装所需的软件包。希望以上内容对大家的学习有所帮助。 ### 回答3: 在CentOS 7.6中,yum是一种非常重要的软件包管理器,它允许用户快速和轻松地安装、更新和卸载软件包。但是,为了使用yum命令,我们需要先配置yum源。 配置yum源的步骤如下: 1.备份原有CentOS-Base.repo文件 在开始之前,我们需要先备份原有的CentOS-Base.repo文件,以防止出现配置错误的情况。执行以下命令备份: sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak 2.下载新的CentOS-Base.repo文件 执行以下命令,下载新的CentOS-Base.repo文件: sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 3.清除yum缓存 执行以下命令,清除yum缓存: sudo yum clean all 4.更新yum缓存 执行以下命令,更新yum缓存: sudo yum -y makecache 5.测试yum源是否正常 执行以下命令,测试yum源是否正常: sudo yum -y update 如果yum源配置正确,你将会看到如下输出: Updated: 0 packages 完整的过程就是这样,现在你已经成功地配置了CentOS 7.6的yum源。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值