📋 文献参考
这里非常感谢知乎上的 ‘丢丢’ 的[
**Windows系统下英特尔独显+Pytorch的历程**
] 为我提供了一开始的 I 卡安装想法!但是文中并未介绍如何进行额外的环境变量操作问题,导致很多软件直接安装至系统盘,占用系统盘空间(本文采取非系统盘安装外加系统环境变量配置方式进行安装),同时解决大部分人常见问题。
这里同时还参照了丢丢所推荐的国外作者 【Christian Mills】的文章,非常感谢
Christian Mills - Getting Started with Intel’s PyTorch Extension for Arc GPUs on Windows
找到官方 Issues 了,当时也参考了下这里,不过后面知道了这里是因为 VS 环境变量设置有误导致的
💻 环境准备
1️⃣ I 卡显卡驱动安装 —— Intel® Arc™ & Iris® Xe Graphics - Windows* —— 这个一般在装机跑分的时候就已经装过了,后面同样会给新的链接进行下载。
2️⃣ MiniConda 非系统盘安装 ——✅ MiniConda
3️⃣Pytorch-extension-intel whl 下载参考 —— 可以不用去下载(给你看看的),后续有如何直接获取所有的下载指令,如何根据版本需求自动生成
🤖 操作步骤
1️⃣ Enable Resizable BAR In BIOS
这个一般安装显卡的时候就已经在 BIOS 中开启了,如果不知道如何具体开启可以查询主板厂商或其官
寻找文档进行对应的操作教程,这里提供一份华硕主办的开启方式。
[主板]如何开启Resize BAR(Resizable BAR)功能? | 官方支持 | ASUS 中国
2️⃣ 官网下载最新的驱动
官方最新 Intel® Arc™ & Iris® Xe Graphics - Windows* 驱动下载
3️⃣ 下载安装 Visual Studio 以便使用其带有 C++ 工作负载的桌面开发来实现其部分包的功能
✅ Visual Studio 2022 社区版非系统盘安装 C++桌面级应用开发功能以及配置 VisualStudio 环境变量
4️⃣ 下载 oneAPI Toolkit Installer
5️⃣ 关闭核显,设备管理中右键核显可以看到选项
6️⃣ 安装Miniconda
7️⃣ 构建一个用于 ARC770_Pytorch 环境 ,Python 版本为 3.11
$ conda create -n ARC770_Python_Pytorch python==3.11
$ conda activate ARC770_Python_Pytorch
8️⃣ 通过 cmd 命令行 ,激活 OneAPI 环境,开启 Intel VTun Profiler 2024.0.0
- Win + R 输入 cmd 出现命令行窗口
- 激活 OneAPI 环境
call d:\Intel\oneAPI\setvars.bat
,如果需要强制重新激活环境需要在后方追加--force
命令即可。
D:\>call \Intel\oneAPI\setvars.bat
:: initializing oneAPI environment...
Initializing Visual Studio command-line environment...
:: WARNING: Visual Studio was not found in a standard install location:
"C:\Program Files\Microsoft Visual Studio\<Year>\<Edition>" or
"C:\Program Files (x86)\Microsoft Visual Studio\<Year>\<Edition>"
Set the VS2017INSTALLDIR or VS2019INSTALLDIR or VS2022INSTALLDIR
environment variable to point to your install location and try again.
Visual Studio command-line environment was not configured.
: advisor -- latest
: compiler -- latest
:: WARNING: Visual Studio was not found in the standard installation location:
"C:\Program Files\Microsoft Visual Studio\<Year>\<Edition>" or
"C:\Program Files (x86)\Microsoft Visual Studio\<Year>\<Edition>"
Set the VS2017INSTALLDIR or VS2019INSTALLDIR or VS2022INSTALLDIR
environment variable to point to your install location and try again.
: dal -- latest
: debugger -- latest
: dev-utilities -- latest
: dpcpp-ct -- latest
:: WARNING: Visual Studio was not found in the standard installation location:
"C:\Program Files\Microsoft Visual Studio\<Year>\<Edition>" or
"C:\Program Files (x86)\Microsoft Visual Studio\<Year>\<Edition>"
Set the VS2017INSTALLDIR or VS2019INSTALLDIR or VS2022INSTALLDIR
environment variable to point to your install location and try again.
: dpl -- latest
: ipp -- latest
: ippcp -- latest
: mkl -- latest
: tbb -- latest
: vtune -- latest
:: oneAPI environment initialized ::
注意说明
注意
!!!这里请注意这里的 **WARNING**
: **Visual Studio was not found in a standard install location**
我们选择非系统盘安装的 **Visual Studio**
环境在这里就需要额外进行配置了,他有提示,这个 WARNING ,如果不进行配置后面在进行 **import torch**
的时候默认是从你 **C**
盘去加载 **dll**
,固然肯定没有我们安装的 **torch**
,报个找不到模块的错很正常,也就是我再最初提到过官方的 Issue ,这里再贴一遍的报错。
测试的时候就会报类似下面这种错误
既然找到了问题所在点该如何配置呢??? 读刚才的
**WARNING**
之后就可以知道我们缺少对应**VS2022INSTALLDIR**
的环境变量映射,在环境变量中追加我们的**VS2022INSTALLDIR**
,地址目录为**D:\Microsoft Visual Studio\2022\Community**
即可。按照下图配置完成即可。
同时也需要将
**VS2022INSTALLDIR**
环境变量加入到**Path**
下 以**%VS2022INSTALLDIR%**
的方式加入,如图所示:
输入
call d:\Intel\oneAPI\setvars.bat
这下就正常加载好了
9️⃣ 装常用的
packages
,进入到构建好的 Minconda 环境,在conda promt
中输入
$ conda activate ARC770_Python_Pytorch
$ pip install jupyter matplotlib pandas pillow timm torcheval torchtnt tqdm
$ pip install cjm_pandas_utils cjm_psl_utils cjm_pil_utils cjm_pytorch_utils
0️⃣ 装常用的 Packages ,进入到构建好的 Minconda 环境,在
**conda promt**
** 中输入**
$ conda install pkg-config libuv
ℹ️ 装所需要的 Pytorch 和 Intel PyTorch extension ,进入到构建好的 Minconda 环境,在
**conda promt**
** 中输入**
!!!这里就可以进入到我一开始推荐的网站啦!!!
Welcome to Intel® Extension for PyTorch* Documentation!
$ python -m pip install torch==2.1.0a0 torchvision==0.16.0a0 torchaudio==2.1.0a0 intel-extension-for-pytorch==2.1.10 --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/us/ --user
!!! 注意在结尾追加 --user
否则会因为权限无法正常下载安装!!!
设置 OneDNN Memory Layout ,进入到构建好的 Minconda 环境,在
**conda promt**
** 中输入**
$ set IPEX_XPU_ONEDNN_LAYOUT=1
$ setx IPEX_XPU_ONEDNN_LAYOUT 1
🤓 验证
import torch
import intel_extension_for_pytorch as ipex
print(f'PyTorch Version: {torch.__version__}')
print(f'Intel PyTorch Extension Version: {ipex.__version__}')
运行后应该可以显示 torch 和 intel_extension_for_pytorch 的版本信息及设备信息。如:
自己家里电脑 4070Ti
公司电脑 Arc A770