在windows环境下编译pytorch源码

本文详细记录了在Windows10系统中编译PyTorch v1.12.1源码的过程,包括创建Conda虚拟环境、安装依赖、下载源码、解决解压问题以及使用Python setup.py进行编译。特别指出,Visual Studio需为2019版,内存和依赖版本匹配也是成功编译的关键。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

本文记录一下自己在windows环境下编译pytorch源码所经过程和踩过的坑。

系统环境

Windows10家庭中文版
PyTorch-v1.12.1
Conda-v22.9.0
Python-3.9.13
CUDA-v11.8
Visual Studio 2019

1.Conda创建虚拟环境

打开Anaconda Prompt,输入命令创建环境,这里直接指定python版本。

conda create -n debugpytorch python=3.9
conda activate debugpytorch

进入debugpytorch虚拟环境:

2.Conda下载依赖

在Conda环境中安装编译所需依赖

conda install astunparse numpy ninja pyyaml setuptools cmake cffi typing_extensions future six requests dataclasses

3.下载PyTorch源码

方法一:

git命令行方式克隆项目。

git clone --recursive https://github.com/pytorch/pytorch
cd pytorch
# if you are updating an existing checkout
git submodule sync
git submodule update --init --recursive --jobs 0

这里我采用的方法二。

方法二:

下载PyTorch源码:
PyTorch的github网址:https://github.com/pytorch/pytorch,进入后选择对应版本
在这里插入图片描述
最下端选择第一个下载。
在这里插入图片描述
注意
在windows下解压时,会出现can not create symbolic link的错误。这时采用管理员下的命令行解压。
首先安装7z,并将7z目录放到环境变量中。
在这里插入图片描述
管理员方式打开命令行,执行以下命令。

7z x pytorch1.12.1.tar1

解压完成。

4.Conda环境下编译源码

在Anaconda Prompt窗口下进入之前创建的debugpytorch环境下,进入源码文件夹。
Anaconda Prompt
执行命令开始编译(编译选项设置DEBUG):

set "DEBUG=1 USE_DISTRIBUTED=0 USE_MKLDNN=0 USE_CUDA=0 BUILD_TEST=0 USE_FBGEMM=0 USE_NNPACK=0 USE_QNNPACK=0 USE_XNNPACK=0" 
&& python setup.py develop

编译过程较慢,编译完成后显示
在这里插入图片描述提示编译成功后,可以打开torch/init.py文件,在文件最后加上以下两行代码:

print("FileName: " + __file__ + '\n')
print("Welcome To PyTorch Source Code World\n')

之后在Anaconda Prompt中输入python进入:
在这里插入图片描述
输入import torch导入torch包:
在这里插入图片描述
编译成功!

注意
编译过程失败有以下几个原因:
1.内存不够,可以增加内存或者swap空间
2.各种依赖或者编译器版本不对,Visual Studio务必是2019版的,本人在2022版中编译失败,而且编译速度比2019慢的多。

参考博客

[1]: PyTorch源码学习系列 - 1.初识https://zhuanlan.zhihu.com/p/567978232

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值