【工具】Windows平台MXNet错误“cudaMalloc failed: device kernel image is invalid”

问题描述

使用MXNet做GPU计算时报错 “cudaMalloc failed: device kernel image is invalid” ,如下为测试用的完整代码,具体是执行倒数第二条语句a = nd.array([1, 2, 3], ctx=mx.gpu(0))报错。

# coding=utf-8
# author: BebDong
# 2019/1/19
# nvidia-smi命令可查看GPU信息
# 使用GPU存储和计算

import mxnet as mx
from mxnet import nd

# MXNET计算设备
print(mx.cpu(), mx.gpu(), mx.gpu(1))

# 通过context属性查看所属设备,默认利用cpu计算
X = nd.array([1, 2, 3])
print(X.context)

# NDArray在创建时通过ctx参数指定存储设备,计算时根据context属性进行计算和存储
a = nd.array([1, 2, 3], ctx=mx.gpu(0))
print(a)

解决

参考了Gluon社区的一篇讨论,题主也遇到相同问题。讨论中大家给出的解决方案是将mxnet-cu90的版本回退到1.2.0即可解决。
在这里插入图片描述
在这里插入图片描述
抱着试一试的态度,笔者也将之前安装的mxnet-cu90 1.2.1版本回退到1.2.0版本。果然,问题解决!运行上面相同的测试代码,结果如下:
在这里插入图片描述
回退方法先卸载1.2.1版本再安装1.2.0版本即可:

pip uninstall mxnet-cu90
pip install mxnet-cu90==1.2.0
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值