【开发环境】Windows下搭建TVM编译器

这篇具有很好参考价值的文章主要介绍了【开发环境】Windows下搭建TVM编译器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

关于搭建TVM编译器的官方文档:Install from Source — tvm 0.14.dev0 documentation (apache.org)

1. 安装Anaconda

首先我们需要安装Anaconda,因为其中包含着我们所需要的各类依赖:

进入Anaconda官网https://www.anaconda.com/products/distribution,下载Windows版本,下载完成后运行.exe,可以更改安装路径(如果安装路径不是C盘可能需要一点点额外的步骤,这个后面会提到),基本一路Next就可以了。需要注意的是,一定要把将Anaconda加入PATH勾选上,这样就可以节省配置Anaconda环境变量的步骤。

最终安装好Anaconda,可以在电脑应用菜单这里找到对应的cmd终端入口和powershell入口:

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

2. 编译LLVM

接下来是编译LLVM,简便行事我们可以使用已经手动编译好的库,进入https://winlibs.com/找到包含LLVM的包:

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

下载解压到任意目录里就行,最后把其中bin目录路径写入环境变量的PATH中,进入Anaconda的cmd终端中输入如下命令:

 llvm-config --libdir

不报错并显示对应的库目录路径意味着前面的步骤都完成了,下面就开始搭建TVM。

3. 获取TVM源码

从github上获取最新版的TVM克隆到本地文件夹tvm中,记住务必要克隆而非直接下载ZIP解压否则后面编译会报错

 $ git clone --recursive http://github.com/apache/tvm tvm

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

新建一个build文件夹,从文件夹cmake中复制一份config.cmake拷贝到build文件夹中:

 $ cd tvm
 $ mkdir build
 $ cp cmake/config.cmake build

当然源码获取并没有这么简单,这也是我踩的一个大坑了,如果现在查看build里的一些文件夹,你会发现很多是空的,这是因为它们是子仓库所以并没有跟随着一起将源码克隆到本地,反而只是将一个jit链接克隆了下来,我们接下来需要补充这一部分代码,进入github仓库的build文件夹下,将有蓝色链接(含有子仓库)的源码下载到本地,替换原来残缺的部分:

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

4. 构建虚拟环境

在Anaconda终端中切换到tvm的文件夹目录下,注意:如果你将Anaconda放在了非系统盘,那么你需要使用管理员身份进入终端。

使用如下命令构建并进入tvm-build的虚拟环境:

 # Create a conda environment with the dependencies specified by the yaml
 conda env create --file conda/build-environment.yaml
 # Activate the created environment
 conda activate tvm-build

这个过程会比较长,大概10分钟左右。

5. 使用cmake生成.dll库

打开build目录下的config.cmake文件,将USE_LLVM设为ON,修改完后保存:

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

进入build目录调用cmake进行生成:

 cd build
 cmake -A x64 -Thost=x64 ..
 cd ..
 cmake --build build --config Release -- /m

这里可能会有报错"No CMAKE_C_COMPILER could be found",意思就是没有编译器,我们可以去下载Visual Studio解决这个问题,如果你已经安装了Visual Studio但仍然存在这个问题,那你需要去Visual Studio Installer里下载安装一个SDK,这里我推荐最新版的windows 10 SDK。

这个步骤也要等待蛮久的,大概半小时(而且非常占用CPU,电脑风扇起飞),可以看到中途会有很多Warnings,不必理会不是Error就知足吧Orz):

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

最终可以看到在tvm\build\Release目录下生成了tvm.dll的链接库:

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

6. python依赖库的安装

使用如下命令直接安装即可:

 pip3 install typing_extensions numpy decorator attrs
 pip3 install tornado psutil xgboost cloudpickle
 pip3 install ml_dtypes

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

7. 将TVM安装到python环境

这一步看其他大佬的博客都是直接配置PYTHONPATH环境变量,但实际上我们在Anaconda终端直接运行如下脚本即可完成:

 cd python
 python setup.py install

运行完毕,可以打开python的IDLE输入import tvm来简单测试一下我们搭建的TVM是否可用:

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

如上所示,没有报错基本就成功了。

当然如果不习惯用IDLE,也可以使用VSCode、PyCharm等代码编辑器,例如在VSCode的设置的命令面板中输入:

python:select interpreter

更换python解释器为我们刚刚添加tvm包的解释器:

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

如下所示,没有报错:

【开发环境】Windows下搭建TVM编译器,环境搭建,深度学习,windows,人工智能,tvm,编译器,深度学习编译器

至此,我们的TVM编译器搭建就结束了,篇幅不长但是却浓缩了我踩坑的漫长经历QAQ文章来源地址https://www.toymoban.com/news/detail-613171.html

到了这里,关于【开发环境】Windows下搭建TVM编译器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用arm-none-eabi-gcc编译器搭建STM32的Vscode开发环境

    make:Windows中没有make,但是可以通过安装MinGW或者MinGW-w64,得到make。 gcc-arm-none-eabi:建议最新版,防止调试报错 OpenOCD vscode cubeMX Arm Assembly:汇编文件解析 C/C++:c语言插件 Cortex-Debug:调试插件 gcc-arm-none-eabibin OpenOCDbin 建议MinGW-make工具重命名为make.exe并添加到gcc-arm-none-eabi

    2024年02月06日
    浏览(52)
  • 【Linux环境基础开发工具】编译器-gcc/g++

    上一篇博客, 我们学习了vim编辑工具,学会了怎么写代码, 这篇文章,我将分享代码该怎么编译的问题。 目录 写在前面: 1. gcc和g++介绍 2. gcc是如何编译程序的 1. 预处理 2. 编译 3. 汇编 4. 链接 3. gcc的选项介绍 4. 我们使用的函数是哪来的 5. 我们的.o文件和库是如何链接的?

    2024年02月10日
    浏览(50)
  • 【BSP技能手册】-【MCU篇】-【stm32】-【开发环境】-【编译器】

    开发环境==为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,分为【编译器】【驱动程序】【下载程序】【调试程序】。stm32常用kei进行开发。 此文介绍kei【编译器】的安装。 (权限问题,注意辨认缩写) ①bai度云链接:https://pan.baidu.com/s/17YrqCeGSIG15WVwIzx4

    2024年02月07日
    浏览(46)
  • VSCode + GCC编译器(MinGW)开发环境中文字符乱码问题踩坑与解决办法

    问题背景 在较长一段时间里,C/C++开发者所使用的集成开发环境(IDE)要么是比较重量级的 VS(Visual Studio) ,要么是 Codeblocks·、·Visual C++ 6.0 等轻量级IDE,又或者是诸如 notepad++、sublime text 等文本编辑器+ GCC编译器 +命令行工具的组合式开发环境。这几种开发方式要么太过庞

    2023年04月22日
    浏览(72)
  • 在win10上,配置 Rust 开发环境(使用 mingw64编译器) 和 idea 配置 Rust 插件

    2.1、编译器 mingw 与 visual studio 之间的选择 Rust 底层是依赖C/C++的 编译器,所以需要先安装C/C++编译环境。 Windows上C/C++ 的 编译器 有两种: 微软 的 Visual Studio (msvc) GNU 的 Mingw (gnu): 官网地址:https://www.mingw-w64.org/ Rust 默认使用的是 Visual Studio, 使用默认选项就能安装上,

    2024年02月02日
    浏览(52)
  • python在线编译器搭建,python在线编译器源码

    本篇文章给大家谈谈python在线编译器搭建,以及python在线编译器源码,希望对各位有所帮助,不要忘了收藏本站喔。 1. PyCharm集成开发环境 2. PyCharm的下载与安装 3. Pycharm的使用 3.1 创建Python项目 3.2 创建子目录 3.3 创建Python文件 3.4 切换解释器 3.5 常用快捷键 4. Pycharm常用配置

    2024年03月25日
    浏览(62)
  • 深度学习AI编译器-LLVM简介

    LLVM的命名最早来源于底层语言虚拟机(Low Level Virtual Machine)的缩写。它是一个用于建立编译器的基础框架,以C++编写。创建此工程的目的是对于任意的编程语言,利用该基础框架,构建一个包括编译时、链接时、执行时等的语言执行器。目前官方的LLVM只支持处理C/C++,Obje

    2024年02月06日
    浏览(42)
  • 【LINUX】查看自己系统环境、编译器环境

    1.查看自己系统环境         在Linux系统上,使用 uname -a 命令可以获取关于系统内核和操作系统的详细信息。这个命令会显示出当前系统的内核版本、主机名、操作系统类型、处理器架构等信息。在终端中执行以下命令即可查看输出: 输出可能会类似于以下内容:  当在

    2024年02月07日
    浏览(45)
  • 深度学习编译器相关的优秀论文合集-附下载地址

    公司排名不分先后 目前在AI芯片编译器领域,有很多大公司在进行研究和开发。以下是一些主要的公司和它们在该领域的研究时间: 英伟达(NVIDIA):英伟达是一家全球知名的图形处理器制造商,其在AI芯片编译器领域的研究和开发始于2016年左右。 英特尔(Intel):英特尔是

    2023年04月11日
    浏览(50)
  • vim 配置环境变量与 JDK 编译器异常

    vim 配置环境变量 使用 vim 打开系统中的配置信息(不存在将会创建): vim ~/.bash_profile 以配置两个版本 JDK 为例(前提是已安装 JDK),使用上述命令打开配置信息: 输入法调成英文,输入 i,进入到编辑模式 正确输入配置信息,输入完毕后,点击 esc 按键,退出编辑 输入以下

    2024年02月12日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包