You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WSL/Ubuntu环境运行Python deepqmc库报MAGMA未初始化错误如何解决?

报错原因

该报错由GPU高性能线性代数计算库MAGMA触发,通常有两个核心诱因:

  1. MAGMA库未被正确初始化,程序调用相关接口时没有检测到生效的MAGMA运行环境
  2. 环境内PyTorch、CUDA、MAGMA三者版本不匹配,无法完成依赖联动

你可以正常启动训练流程,说明代码本身没有语法问题,仅在运行到需要调用MAGMA做GPU加速线性代数运算的环节才触发错误。

解决方法
  • 优先切换线性代数后端规避MAGMA调用,在训练脚本的最开头添加如下代码:
import torch
torch.backends.cuda.preferred_linalg_library("cusolver")

该配置会强制PyTorch使用cusolver替代MAGMA完成线性代数计算,适配绝大多数DeepQMC的训练场景,不需要修改其他训练逻辑。

  • 重装匹配版本的依赖栈,卸载当前环境的PyTorch、MAGMA相关包后,安装与你CUDA版本完全匹配的依赖组合,以CUDA 11.8为例,执行命令:
conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.8 magma-cuda118 -c pytorch -c nvidia -c conda-forge

安装完成后重启运行环境再启动训练即可。

  • 通过环境变量禁用MAGMA,运行训练脚本前在终端执行如下命令:
export PYTORCH_USE_CUSOLVER=1

WSL环境与原生Ubuntu环境均适用该配置,无需修改代码即可生效。

  • 验证GPU设备有效性,运行如下代码确认CUDA环境配置正常:
import torch
print(torch.cuda.is_available())
print(torch.cuda.get_device_name(0))

若第一条输出为False,说明CUDA与显卡驱动本身存在配置问题,需要先修复CUDA环境后再执行上述操作。


内容的提问来源于stack exchange,提问作者andresfrodri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 18:27:03