Intel显卡运行AI配置教程
当前安装方式:PyTorch 原生 XPU
下面以 Windows 11 和 Arc A770 为例,使用 PyTorch 官方 XPU wheel。普通的预编译 wheel 不需要把旧版 IPEX 和 oneAPI setvars.bat 作为固定前置步骤;GPU 驱动仍需满足当前 PyTorch 的要求。Linux 的驱动与运行时安装应按对应发行版的官方说明处理。
创建环境与安装
使用独立环境,避免直接覆盖旧项目依赖:
conda create -n intel-xpu python=3.11
conda activate intel-xpu
python -m pip install --upgrade pip
python -m pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/xpu
python -m pip check
默认使用稳定版索引;只有项目明确要求测试版时才选 nightly,并记录对应版本。
验证 GPU 与实际计算
将下面代码保存为 check_xpu.py,在刚创建的环境中执行 python check_xpu.py:
import torch
print("PyTorch:", torch.__version__)
print("XPU available:", torch.xpu.is_available())
if not torch.xpu.is_available():
raise RuntimeError("当前环境没有可用XPU,请检查wheel、驱动与Python路径")
print("Device:", torch.xpu.get_device_name(0))
x = torch.ones((64, 64), device="xpu")
y = x @ x
torch.xpu.synchronize()
print("Result:", y[0, 0].item()) # 应为64.0
is_available() 用来检查设备是否可用,张量计算再验证实际执行路径;原生流程无需导入 intel_extension_for_pytorch。需要 torch.compile 或编译自定义扩展时,再按对应功能的文档补充编译器,而不是默认安装全部开发工具。
训练示例使用 CIFAR-10,首次运行会下载数据,并在当前目录保存 checkpoint.pth;已有同名模型时先调整保存路径。先用上面的短计算示例检查设备,显存不足时继续减小 batch size。
import torch
import torchvision
if not torch.xpu.is_available():
raise RuntimeError("先通过XPU设备检查,再运行训练示例")
LR = 0.001
DOWNLOAD = True
DATA = "datasets/cifar10/"
transform = torchvision.transforms.Compose(
[
torchvision.transforms.Resize((224, 224)),
torchvision.transforms.ToTensor(),
torchvision.transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)),
]
)
train_dataset = torchvision.datasets.CIFAR10(
root=DATA,
train=True,
transform=transform,
download=DOWNLOAD,
)
train_loader = torch.utils.data.DataLoader(dataset=train_dataset, batch_size=32)
train_len = len(train_loader)
model = torchvision.models.resnet18(num_classes=10).to("xpu")
criterion = torch.nn.CrossEntropyLoss().to("xpu")
optimizer = torch.optim.SGD(model.parameters(), lr=LR, momentum=0.9)
model.train()
print(f"Initiating training")
for batch_idx, (data, target) in enumerate(train_loader):
data = data.to("xpu")
target = target.to("xpu")
optimizer.zero_grad()
output = model(data)
loss = criterion(output, target)
loss.backward()
optimizer.step()
if (batch_idx + 1) % 10 == 0:
iteration_loss = loss.item()
print(f"Iteration [{batch_idx+1}/{train_len}], Loss: {iteration_loss:.4f}")
torch.save(
{
"model_state_dict": model.state_dict(),
"optimizer_state_dict": optimizer.state_dict(),
},
"checkpoint.pth",
)
print("Execution finished")
旧版 IPEX 环境记录
以下保留原先的安装与排错记录,涉及当时的驱动、oneAPI 和特定 PyTorch/IPEX 组合。它们不是前面原生 XPU 流程的后续步骤,也不应装进同一个环境。复现旧项目时,应按对应 release 的 wheel 平台、Python 版本与依赖矩阵核对。
2026-11-03 复核:Intel 已停止 IPEX 主动开发和季度版本发布,并建议直接使用 PyTorch 原生能力;官方给出的过渡维护期截至 2026 年 3 月。因此本节只用于复现旧环境,新项目不要再把 IPEX 作为默认方案。
原记录的平台与版本
- Intel Arc系列显卡(如A770 16G)驱动为6559
- win11
- oneAPI==2025.0.1
- PyTorch 与 IPEX:分别核对下文版本组合,不把 IPEX 版本号当作 PyTorch 版本号
1. 安装Miniconda并配置Python虚拟环境
可以参考这个conda安装及使用 | 逐梦
步骤说明
- 下载Miniconda
- 访问 Miniconda官网,选择对应操作系统的安装包(建议Python 3.11版本)。
- 安装Miniconda
- Windows:按安装器提示完成安装,通过 Miniconda Prompt 或 shell 初始化使用环境,不必把整个安装目录加入系统 PATH。
- Linux/macOS:
bash Miniconda3-latest-Linux-x86_64.sh # 根据文件名调整
- 创建Python 3.11虚拟环境
conda create -n intel-ai python=3.11 conda activate intel-ai
2. 更新Intel显卡驱动
关键操作
- 下载最新驱动
- 访问 Intel驱动下载页,按当时系统与运行库的支持矩阵选择驱动;32.0.101.6559 是原记录版本,不是当前固定推荐值。
- 安装驱动
- Windows:运行安装程序,按提示完成安装。
- Linux:使用包管理器(如Ubuntu/Debian):
sudo apt install intel-opencl-icd intel-level-zero-gpu level-zero
- 验证驱动状态
- Windows:按
Win + X> 设备管理器 > 显示适配器,确认显卡型号正确。 - Linux:
lspci | grep -i intel # 确认显卡识别 clinfo # 检查OpenCL支持
- Windows:按
3. 安装Visual Studio Build Tools(仅Windows)
操作步骤
- 下载Visual Studio 2022
- 访问 Visual Studio官网,下载社区版。
- 安装C++桌面开发组件
- 在安装界面勾选:
- 使用C++的桌面开发
- Windows 10/11 SDK
- C++ CMake工具
- 默认也行
- 在安装界面勾选:
- 验证安装
- 打开对应 Visual Studio 的开发者命令提示符,运行
cl检查编译器;普通终端未加载 MSVC 环境时找不到 cl,并不等于没有安装。
- 打开对应 Visual Studio 的开发者命令提示符,运行
4. 安装Intel oneAPI工具包
步骤说明
下载oneAPI Base Toolkit
- 访问 oneAPI官网,选择Base Toolkit->windows->offline installer,然后点击右边往下一点Continue as a Guest (download starts immediately) →下载
安装oneAPI
- Windows:按对应 IPEX 版本的文档选择所需组件,不必默认安装全部工具包。
- Linux:使用包管理器或脚本安装。
激活oneAPI环境变量
以下调用仅用于这个旧 IPEX 环境;Windows 命令在已能使用 Conda 的 CMD 中执行,
call不是 PowerShell 语法。- Windows:
call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat" - Linux:
source /opt/intel/oneapi/setvars.sh
- Windows:
5. 安装Intel Extension for PyTorch (IPEX)
操作命令
- 激活虚拟环境与oneAPI
在 CMD 中执行,工作目录按实际位置修改;已有 intel-ai 环境时跳过创建命令。cd /d "E:\AI" conda create -n intel-ai python=3.11 conda activate intel-ai conda install libjpeg-turbo conda install libpng call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat" conda activate intel-ai conda install pkg-config libuv - 安装PyTorch与IPEX
# 历史IPEX专用版本组合;需确认对应平台的wheel仍可获取 pip install torch==2.3.1.post0+cxx11.abi torchvision==0.18.1.post0+cxx11.abi torchaudio==2.3.1.post0+cxx11.abi intel-extension-for-pytorch==2.3.110.post0+xpu --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/cn/pip install torch==2.5.1+cxx11.abi torchvision==0.20.1+cxx11.abi torchaudio==2.5.1+cxx11.abi intel-extension-for-pytorch==2.5.10+xpu --extra-index-url https://pytorch-extension.intel.com/release-whl/stable/xpu/cn/ # 原记录的另一组历史版本,不代表当前最新版本
6. 验证IPEX安装与显卡识别
验证步骤
- 运行Python脚本检查GPU支持
import torch import intel_extension_for_pytorch as ipex print(f"PyTorch版本: {torch.__version__}") print(f"IPEX版本: {ipex.__version__}") print(f"Intel GPU是否可用: {torch.xpu.is_available()}") print(f"检测到的Intel GPU设备: {torch.xpu.get_device_name(0)}" if torch.xpu.is_available() else "未检测到可用XPU")python -c "import torch; import intel_extension_for_pytorch as ipex; print('PyTorch版本:', torch.__version__); print('IPEX版本:', ipex.__version__); print('Intel GPU是否可用:', torch.xpu.is_available()); print('检测到的Intel GPU设备:', torch.xpu.get_device_name(0) if torch.xpu.is_available() else '未检测到可用XPU')" # 一键脚本 - 预期输出
官方脚本PyTorch版本: 2.1.0 IPEX版本: 2.1.0 Intel GPU是否可用: True 检测到的Intel GPU设备: Intel(R) Arc(TM) A770 Graphics
以上输出仅是旧版示例格式,版本号应以实际安装结果为准;还需通过实际计算测试确认。python -c "import torch; import intel_extension_for_pytorch as ipex; print(torch.__version__); print(ipex.__version__); [print(f'[{i}]: {torch.xpu.get_device_properties(i)}') for i in range(torch.xpu.device_count())];"
7. 常见问题解决
遇到问题大多数时候都是各种版本不匹配,例如raise err OSError: [WinError 126] 找不到指定的模块。,先区分原生 XPU 与旧 IPEX 环境,核对解释器路径和同一 release 支持的版本组合,不盲目在已有环境中反复升降级。
报错信息
E:\conda\envs\deepll\Lib\site-packages\torchvision\io\image.py:14: UserWarning: Failed to load image Python extension: 'Could not find module 'E:\conda\envs\deepll\Lib\site-packages\torchvision\image.pyd' (or one of its dependencies). Try using the full path with constructor syntax.'If you don't plan on using image functionality from `torchvision.io`, you can ignore this warning. Otherwise, there might be something wrong with your environment. Did you have `libjpeg` or `libpng` installed before building `torchvision` from source?
warn(
解决方案
conda activate intel-ai
conda install libjpeg-turbo
conda install libpng
若有其他缺少库报错,安装对应库即可,可以参考文章python库报错汇总 | 逐梦
总结
新项目先验证 PyTorch 原生 XPU 路线;旧 IPEX 项目单独保留环境与版本记录。运行库相关环境变量应有具体的适用版本和测试依据,不把它们作为所有 Arc 工作负载的通用加速开关。
参考链接
Welcome to Intel® Extension for PyTorch* Documentation!
intel arc 显卡 ComfyUI 安装教程_哔哩哔哩_bilibili
AI绘画 | 只要10步让你在英特尔A770显卡下安装ComfyUI运行StableDiffusion3最新开源模型_arc a750 安装comfyui-CSDN博客
评论将在接近此处时加载,也可点击立即加载。