✅ Windows11 系统 I 卡独显 A770 安装 深度学习 Pytorch 环境

news2024/5/18 16:28:45

📋 文献参考

这里非常感谢知乎上的 ‘丢丢’ 的[**Windows系统下英特尔独显+Pytorch的历程**] 为我提供了一开始的 I 卡安装想法!但是文中并未介绍如何进行额外的环境变量操作问题,导致很多软件直接安装至系统盘,占用系统盘空间(本文采取非系统盘安装外加系统环境变量配置方式进行安装),同时解决大部分人常见问题。

Windows系统下英特尔独显+Pytorch的历程

这里同时还参照了丢丢所推荐的国外作者 【Christian Mills】的文章,非常感谢

Christian Mills - Getting Started with Intel’s PyTorch Extension for Arc GPUs on Windows

找到官方 Issues 了,当时也参考了下这里,不过后面知道了这里是因为 VS 环境变量设置有误导致的

OSError: [WinError 126] The specified module could not be found. Error loading “C:\path\to\venv\lib\site-packages\torch\lib\backend_with_compiler.dll” or one of its dependencies · Issue #485 · intel/intel-extension-for-pytorch

💻 环境准备

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

✅ 安装 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 ,这里再贴一遍的报错。

OSError: [WinError 126] The specified module could not be found. Error loading “C:\path\to\venv\lib\site-packages\torch\lib\backend_with_compiler.dll” or one of its dependencies · Issue #485 · intel/intel-extension-for-pytorch

测试的时候就会报类似下面这种错误

image.png

既然找到了问题所在点该如何配置呢??? 读刚才的 **WARNING** 之后就可以知道我们缺少对应 **VS2022INSTALLDIR** 的环境变量映射,在环境变量中追加我们的 **VS2022INSTALLDIR** ,地址目录为 **D:\Microsoft Visual Studio\2022\Community** 即可。按照下图配置完成即可。

image.png

同时也需要将 **VS2022INSTALLDIR** 环境变量加入到 **Path** 下 以 **%VS2022INSTALLDIR%** 的方式加入,如图所示:

image.png

输入call d:\Intel\oneAPI\setvars.bat

image.png
这下就正常加载好了

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!
image.png

$ 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 否则会因为权限无法正常下载安装!!!
image.png

设置 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

image.png

公司电脑 Arc A770

c427572a45ac5b019c6778969b31455.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1498879.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Go编译报错 link: running gcc failed: exit status 1(已解决)

背景 在对一个开源的Go程序二次开发 重新编译时 &#xff0c; 报错截图如下 报错文字如下&#xff1a;关键信息 link: running gcc failed: exit status 1 $ go build -o orchestrator-didi -i go/cmd/orchestrator/main.go go build: -i flag is deprecated # command-li…

18-Java迭代器模式 ( Iterator Pattern )

Java迭代器模式 摘要实现范例 迭代器模式&#xff08;Iterator Pattern&#xff09;用于顺序访问集合对象的元素&#xff0c;不需要知道集合对象的底层表示 迭代器模式是 Java 和 .Net 编程环境中非常常用的设计模式 迭代器模式属于行为型模式 摘要 1. 意图 提供一种方法…

【MySQL】lower_case_table_names作用及使用

知识点&#xff1a; lower_case_table_names 是mysql设置大小写是否敏感的一个参数。 场景&#xff1a;在使用dataease时&#xff0c;连接外部数据库&#xff0c;启动报错&#xff01;后查看官方文档&#xff0c;特别要求改数据库配置文件&#xff1a;lower_case_table_names …

Service Mesh:如何为您的微服务架构带来可靠性和灵活性

在云原生架构中&#xff0c;Service Mesh 技术成为了微服务架构中不可或缺的一环。本文灸哥将和你一起探讨 Service Mesh 技术的原理、功能和实践&#xff0c;帮助架构师和开发人员更好地理解和应用这一关键技术。 1、Service Mesh 技术概述 Service Mesh 又称为服务网格&…

FPGA 按键控制串口发送

按键消抖 消抖时间一般为10ms&#xff0c;我使用的板子是ACX720&#xff0c;晶振为50MHZ&#xff0c;20ns为一周期。 状态机 模块设计 设计文件 timescale 1ns / 1ps // // Company: // Engineer: // // Create Date: 2023/01/11 12:18:36 // Design Name: // Module Name…

JavaEE进阶(14)Linux基本使用和程序部署(博客系统部署)

接上次博客&#xff1a;JavaEE进阶&#xff08;13&#xff09;案例综合练习——博客系统-CSDN博客 目录 程序配置文件修改和打包 构建项目并打包 分平台配置 数据准备 上传jar包到云服务器并运行 开放端口号 验证程序 如何查看日志得到报错信息 常见问题 关于Linux基…

【自然语言处理】NLP入门(五):1、正则表达式与Python中的实现(5):字符串常用方法:对齐方式、大小写转换详解

文章目录 一、前言二、正则表达式与Python中的实现1.字符串构造2. 字符串截取3. 字符串格式化输出4.字符转义符5. 字符串常用函数函数与方法之比较 6. 字符串常用方法1. 对齐方式center()ljust()rjust() 2. 大小写转换lower()upper()capitalize()title()swapcase() 一、前言 本…

maven项目结构管理统一项目配置操作

一、maven分模块开发 Maven 分模块开发 1.先创建父工程&#xff0c;pom.xml文件中&#xff0c;打包方式为pom 2.然后里面有许多子工程 3.我要对父工程的maven对所有子工程进行操作 二、解读maven的结构 1.模块1 <groupId>org.TS</groupId><artifactId>TruthS…

Java基于微信小程序的医院挂号系统(V2.0),附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

ThreadLocal, InheritableThreadLocal和TransmittableThreadLocal

ThreadLocal, InheritableThreadLocal和TransmittableThreadLocal ThreadLocal(TL) 后续部分地方会使用ThraedLocal简称为TL 什么是TL? ThreadLocal是Java中的一个类, 也称为线程本地变量, 它提供了线程局部变量的功能。每个ThreadLocal对象都可以存储一个线程本地的变量副…

【数据结构】二、线性表:4.循环链表的定义及其基本操作(循环单链表,循环双链表的初始化、判空、判断头结点、尾结点、插入、删除)

文章目录 4.循环链表4.1循环单链表4.1.1初始化4.1.2判断单链表是否为空4.1.3判断p结点是否为循环单链表的表尾结点 4.2循环双链表4.2.1初始化4.2.2判断循环链表是否为空4.2.3判断结点p是否为循环双链表的表尾结点4.2.4双链表的插入4.2.5双链表的删除 4.循环链表 4.1循环单链表…

R语言:多值提取到点

ArcGIS中有相关工具实现多值提取到点的功能&#xff0c;在这里&#xff0c;我将使用R语言进行操作&#xff1a; library(dplyr) library(readxl) library(sf) library(raster)setwd("D:/Datasets") Bio <- stack(paste0("D:/Datasets/Data/worldclim2_1km/…

关于并发编程和并行

目录 前言: 并发编程: 1.并发编程的定义: 2. 并发编程的目的 2.1提高性能&#xff1a; 2.2增强响应性&#xff1a; 2.3资源利用&#xff1a; 3. 并发编程的实现方式 3.1多线程&#xff1a; 3.2多进程&#xff1a; 3.3异步编程&#xff1a; 3.4协程&#xff1a; 4. …

16、电源管理入门之驱动Runtime PM管理

目录 1. 框架介绍 1.1 为什么需要Runtime PM Framework? 1.2 系统框架图 2. Drivers 3. Runtime PM core 4. power domain framework 5. runtime pm的sysfs 6参考: Runtime PM管理也就是设备驱动里面的电源管理,即设备驱动结构体里面的struct dev_pm_ops,只控制设…

简明固体物理--晶体的形成与晶体结构的描述

简明固体物理-国防科技大学 chapter 1 Formation of Crystal Contents and roadmapQuantum Mechanics and atomic structureElectronsOld quantum theoryMethod of Quantum MechanicsDistributing functions of micro-particles BindingCrystal structure and typical crystal…

【打工日常】使用docker部署IT运维管理平台CAT

​一、CAT介绍 CAT是一个专为 IT 运维从业者打造的一站式解决方案平台&#xff0c;包含资产管理、工单、工作流、仓储等功能模块。 本项目是celaraze/chemex重构版&#xff0c;原项目chemex名称弃用&#xff1b;CAT采用全新架构设计&#xff0c;大量提升使用体验的细节&#xf…

Tensorflow实现手写数字识别

模型架构 具有10个神经元&#xff0c;对应10个类别&#xff08;0-9的数字&#xff09;。使用softmax激活函数&#xff0c;对多分类问题进行概率归一化。输出层 (Dense):具有64个神经元。激活函数为ReLU。全连接层 (Dense):将二维数据展平成一维&#xff0c;为全连接层做准备。展…

Solidworks界面左边FeatureManager/设计树/模型树/树区域/零件树/零件栏不见了

Solidworks界面左边FeatureManager/设计树/模型树/树区域/零件树/零件栏不见了&#xff0c;按F9还原/隐藏&#xff0c;有的笔记本按FnF9

Koa: 打造高效、灵活的Node.js后端 (介绍与环境部署)

在上一篇文章中&#xff0c;我们了解了Node.js的基础知识&#xff0c;今天我们将进一步学习Node.js 较新的一个轻量级Web框架Koa&#xff0c;一起创建NodeJS后端服务器吧&#xff01; 一、介绍 Koa是一个新生代Node.js Web框架&#xff0c;由Express原团队成员开发&#xff0c…

大模型笔记:最少到最多提示过程 (Least to Most prompting, LtM)

LEAST-TO-MOST PROMPTING ENABLES COMPLEX REASONING IN LARGE LANGUAGE MODELS 2023 ICLR 1 概述 进一步发展维链提示过程 (CoT prompting) 分为两个阶段&#xff1a; 第一阶段&#xff1a;向语言模型提出查询&#xff0c;将问题分解成子问题。第二阶段&#xff1a;再次向语…