在带有Intel Arc GPU的Windows上安装IPEX-LLM

在带有Intel Arc GPU的Windows上安装IPEX-LLM

  • 在带有Intel Arc GPU的Windows上安装IPEX-LLM
    • 先决条件
    • 安装 GPU 驱动
    • 安装 Visual Studio 2022 社区版
    • 安装 Intel® oneAPI Base Toolkit
    • 安装 IPEX-LLM
      • 创建虚拟环境
      • 环境验证
    • 可能遇到的问题

在带有Intel Arc GPU的Windows上安装IPEX-LLM

本文将介绍在 Intel Arc GPU 环境下安装 IPEX-LLM。

先决条件

要使用 Intel GPU 加速,工具安装和环境准备有几个先决条件:

第 1 步:安装或更新到最新的 GPU 驱动程序。

第 2 步:安装 Visual Studio 2022 社区版并选择“使用 C++ 进行桌面开发”。

第 3 步:安装 Anaconda 以进行 Python 环境管理。

第 4 步:安装 Intel® oneAPI Base Toolkit。

本文主要介绍第 2 步和第 4 步的安装操作。

安装 GPU 驱动

从驱动程序和软件下载驱动程序。

安装 Visual Studio 2022 社区版

从Visual Studio 2022下载Visual Studio 2022 社区版安装程序,并双击安装程序开始进行安装。点击继续按钮进行下一步。

等待安装向导下载必需的Visual Studio 2022安装程序包。

所有必需的安装包都下载完成后,即将进入下一步。

在工作负荷界面,选择使用 C++ 的桌面程序开发,并确认安装详细信息、选择安装位置,默认是在 C:\\Program Files 目录下,然后点击安装按钮开始进行安装。

等待安装向导下载必需的安装包、进行安装。

所有必需的安装包都下载、安装完成后,在安装完毕提示框点击确定按钮退出安装程序。

这样,Visual Studio 2022 社区版使用 C++ 进行桌面开发就安装完成,安装完成以后建议重启一下电脑。

安装 Intel® oneAPI Base Toolkit

从Get the Intel® oneAPI Base Toolkit下载Intel® oneAPI Base Toolkit,并且双击安装程序进行文件提取及安装。首先需要指定将安装程序的文件提取到哪里,设置好路径后点击 Extract 按钮进行文件提取,即解压安装程序。

然后根据安装向导,点击 Continue 按钮继续安装。

等待安装向导准备完成。

在设置界面,勾选同意协议,并选择 Recommended Installation,然后点击 Continue 按钮开始进行安装。

如果需要自定义安装,可以在上一步选择 Custom Installation,然后在这个界面选择需要安装的组件,点击下一步进行安装。

IDE 这里会默认选择刚才安装的 Visual Studio 2022,直接点击下一步就好。

选择同意,点击 Install 按钮进行下一步。

安装完成需要重启的警告可以先不管,直接点击 Install 按钮开始安装。

等待安装程序完成所有组件的安装。

安装完成后,点击 Finish 按钮,结束程序安装。

这样,Intel® oneAPI Base Toolkit 就安装完成。

安装 IPEX-LLM

创建虚拟环境

我们需要创建一个用来安装 IPEX-LLM 的虚拟环境,Python 版本指定为 3.11。

conda create -n ipex-llm-xpu python=3.11 libuv -y
conda activate ipex-llm-xpu
pip install --pre --upgrade ipex-llm[xpu] --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/us/
pip install --pre --upgrade ipex-llm[xpu] --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/cn/ -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install --pre --upgrade ipex-llm[xpu] --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/mtl/cn/ -i https://pypi.tuna.tsinghua.edu.cn/simple

如果在安装过程中遇到网络问题,还可以从源存档安装 Intel XPU 的 IPEX-LLM 依赖项。

首先,下载必要的 wheels。

wget https://intel-extension-for-pytorch.s3.amazonaws.com/ipex_stable/xpu/torch-2.1.0a0%2Bcxx11.abi-cp311-cp311-win_amd64.whl
wget https://intel-extension-for-pytorch.s3.amazonaws.com/ipex_stable/xpu/torchvision-0.16.0a0%2Bcxx11.abi-cp311-cp311-win_amd64.whl
wget https://intel-extension-for-pytorch.s3.amazonaws.com/ipex_stable/xpu/intel_extension_for_pytorch-2.1.10%2Bxpu-cp311-cp311-win_amd64.whl

然后执行以下命令进行安装。

pip install torch-2.1.0a0+cxx11.abi-cp311-cp311-win_amd64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install torchvision-0.16.0a0+cxx11.abi-cp311-cp311-win_amd64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install intel_extension_for_pytorch-2.1.10+xpu-cp311-cp311-win_amd64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple

pip install --pre --upgrade ipex-llm[xpu]

pip install dpcpp-cpp-rt==2025.0.2 mkl-dpcpp==2025.0.0 onednn==2025.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

环境验证

首先,需要设置一下变量信息。

call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat"

set SYCL_CACHE_PERSISTENT=1
set BIGDL_LLM_XMX_DISABLED=1

然后,可以编写代码进行验证。

import torch 
from ipex_llm.transformers import AutoModel,AutoModelForCausalLM    
tensor_1 = torch.randn(1, 1, 40, 128).to('xpu')
tensor_2 = torch.randn(1, 1, 128, 40).to('xpu')
print(torch.matmul(tensor_1, tensor_2).size())

执行代码,我们将得到如下输出:

torch.Size([1, 1, 40, 40])

并且可以看到GPU的资源利用情况。

可能遇到的问题

在环境安装过程中可能会遇到下面的问题。

OSError: [WinError 126] 找不到指定的模块。 Error loading "C:\Users\wux_l\anaconda3\envs\ipex-llm\Lib\site-packages\torch\lib\backend_with_compiler.dll" or one of its dependencies.

解决方案是安装相关的库。

conda install pkg-config libuv

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

流程控制(if—elif—else,while , for ... in ...)

1. 流程控制 流程:计算机执行代码的顺序 流程控制:对计算机执行代码的顺序的管理 2. 流程控制分类 流程控制分类: 顺序流程:自上而下的执行结构,即 Python 默认流程 选择/分支流程:根据某一步的判断&am…

SpringBoot实战:高效获取视频资源

文章目录 前言技术实现SpringBoot项目构建产品选取配置数据采集 号外号外 前言 在短视频行业高速发展的背景下,海量内容数据日益增长,每天都有新的视频、评论、点赞、分享等数据涌现。如何高效、精准地获取并处理这些庞大的数据,已成为各大平…

SSL域名证书怎么申请?

在数字化时代,网络安全已成为企业和个人不可忽视的重要议题。SSL(Secure Sockets Layer,安全套接层)域名证书,作为保障网站数据传输安全的关键工具,其重要性日益凸显。 一、SSL域名证书:网络安…

用大模型学大模型04-模型与网络

目前已经学完深度学习的数学基础,开始学习各种 模型和网络阶段,给出一个从简单到入门的,层层递进的学习路线。并给出学习每种模型需要的前置知识。增加注意力机制,bert, 大模型,gpt, transformer, MOE等流行…

DeepSeek4j 已开源,支持思维链,自定义参数,Spring Boot Starter 轻松集成,快速入门!建议收藏

DeepSeek4j Spring Boot Starter 快速入门 简介 DeepSeek4j 是一个专为 Spring Boot 设计的 AI 能力集成启动器,可快速接入 DeepSeek 大模型服务。通过简洁的配置和易用的 API,开发者可轻松实现对话交互功能。 环境要求 JDK 8Spring Boot 2.7Maven/Gr…

graphRAG的原理及代码实战(2)基本原理介绍(中)

graphRAG-结果解读 1、简介 前文中,graphRAG项目index索引建立完成后,会生成7个parquet文件。 为什么用 Parquet 格式保存知识图谱? 高效存储: 知识图谱中的数据通常是结构化的,包含大量的实体、关系、嵌入等。Parq…

TLQ-CN10.0.2.0 (TongLINK/Q-CN 集群)部署指引 (by lqw)

文章目录 安装准备虚拟机部署部署zk集群安装zk集群启动zk集群初始化元数据(zk)关闭zk集群 部署BookKeeper集群安装BookKeeper集群初始化元数据(bk)启动BookKeeper停止 BookKeeper 部署Brokers集群安装Brokers集群启动 broker停止 …

深入剖析推理模型:从DeepSeek R1看LLM推理能力构建与优化

著名 AI 研究者和博主 Sebastian Raschka 又更新博客了。原文地址:https://sebastianraschka.com/blog/2025/understanding-reasoning-llms.html。这一次,他将立足于 DeepSeek 技术报告,介绍用于构建推理模型的四种主要方法,也就是…

【Sceneform-EQR】实现3D场景背景颜色的定制化(背景融合的方式、Filament材质定制)

写在前面的话 Sceneform-EQR是基于(filament)扩展的一个用于安卓端的渲染引擎。故本文内容对Sceneform-EQR与Filament都适用。 需求场景 在使用Filament加载三维场景的过程中,一个3D场景对应加载一个背景纹理。而这样的话,即便…

Visual Studio 2022在配置远程调试服务器时无法连接到OpenEuler24.03

表现为在VS中为OpenEuler24.03创建远程服务器时,界面上直接报主机密钥算法失败,或直接提示无法连接到服务器,导致无法创建远程服务器。 经查询日志发现一些蛛丝马迹 09:25:15.2035105 [Info, Thread 53] liblinux.Local.Services.WslEnumer…

常用架构图:业务架构、产品架构、系统架构、数据架构、技术架构、应用架构、功能架构及信息架构

文章目录 引言常见的架构图I 业务架构图-案例模块功能说明1. 用户界面层 (UI)2. 应用服务层3. 数据管理层4. 基础设施层业务流程图示例技术实现II 功能架构图 -案例功能模块说明1. 船舶监控模块2. 报警管理模块3. 应急响应模块4. 通信管理模块5. 数据分析模块数据管理层基础设施…

【电脑】u盘重装win7

u盘必须8GB以上 1. CPU型号 首先查看CPU的型号看看到底能不能装win7 2. 下载光盘映像文件 网址 看电脑是多少位的机器(32位下载x86 64位下载x64) 一共是这么多个版本按需下载对应的版本 电脑小白推荐无脑下载旗舰版 将链接复制到迅雷进行下载 3. 下载软碟通 网址 下…

Java 大视界 -- 大数据伦理与法律:Java 技术在合规中的作用与挑战(87)

💖亲爱的朋友们,热烈欢迎来到 青云交的博客!能与诸位在此相逢,我倍感荣幸。在这飞速更迭的时代,我们都渴望一方心灵净土,而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识,也…

制造业物联网的十大用例

预计到 2026 年,物联网制造市场价值将达到 4000 亿美元。实时收集和分析来自联网物联网设备与传感器的数据,这一能力为制造商提供了对生产流程前所未有的深入洞察。物联网(IoT)有潜力彻底改变制造业,使工厂能够更高效地…

无法读取配置节“system.web.extensions”,因为它缺少节声明

无法读取配置节“system.web.extensions”,因为它缺少节声明 在IIS配置.net接口时,报错: 无法读取配置节“system.web.extensions”,因为它缺少节声明 解决办法:打开IIS,右键>>管理网站>>高级…

Android Studio:键值对存储sharedPreferences

一、了解 SharedPreferences SharedPreferences是Android的一个轻量级存储工具,它采用的存储结构是Key-Value的键值对方式,类似于Java的Properties,二者都是把Key-Value的键值对保存在配置文件中。不同的是,Properties的文件内容形…

Redis——优惠券秒杀问题(分布式id、一人多单超卖、乐悲锁、CAS、分布式锁、Redisson)

#想cry 好想cry 目录 1 全局唯一id 1.1 自增ID存在的问题 1.2 分布式ID的需求 1.3 分布式ID的实现方式 1.4 自定义分布式ID生成器(示例) 1.5 总结 2 优惠券秒杀接口实现 3 单体系统下一人多单超卖问题及解决方案 3.1 问题背景 3.2 超卖问题的…

easyexcel快速使用

1.easyexcel EasyExcel是一个基于ava的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel 即通过java完成对excel的读写操作&#xff0c; 上传下载 2.easyexcel写操作 把java类中的对象写入到excel表格中 步骤 1.引入依赖 <depen…

数据结构 04

4. 栈 4.2. 链式栈 4.2.1. 特性 逻辑结构&#xff1a;线性结构 存储结构&#xff1a;链式存储结构 操作&#xff1a;创建&#xff0c;入栈&#xff0c;出栈&#xff0c;清空&#xff0c;获取 4.2.2. 代码实现 头文件 LinkStack.h #ifndef __LINKSTACK_H__ #define __LINKST…

LeetCode刷题第7题【整数反转】---解题思路及源码注释

LeetCode刷题第7题【整数反转】—解题思路及源码注释 结果预览 目录 LeetCode刷题第7题【整数反转】---解题思路及源码注释结果预览一、题目描述二、解题思路1、问题理解2、解题思路 三、代码实现及注释1、源码实现2、代码解释 四、执行效果1、时间和空间复杂度分析 一、题目描…