我试图在jupyter中用gpu训练我的代码。但是我没有得到正确的gpu。
我的环境是:窗口10,cuda8,蟒蛇3.6,mxnetgpu,木星。
我的代码是:
a = nd.array([1, 2, 3], ctx=mx.gpu())
但我的错误是这样的:
MXNetError Traceback (most recent call last)
<ipython-input-6-3c78e5d2ccff> in <module>
----> 1 a = nd.array([1, 2, 3], ctx=mx.gpu())
2 a
d:datapythonlibsite-packagesmxnetndarrayutils.py in array(source_array, ctx, dtype)
144 return _sparse_array(source_array, ctx=ctx, dtype=dtype)
145 else:
--> 146 return _array(source_array, ctx=ctx, dtype=dtype)
147
148
d:datapythonlibsite-packagesmxnetndarrayndarray.py in array(source_array, ctx, dtype)
2432 except:
2433 raise TypeError('source_array must be array like object')
-> 2434 arr = empty(source_array.shape, ctx, dtype)
2435 arr[:] = source_array
2436 return arr
d:datapythonlibsite-packagesmxnetndarrayndarray.py in empty(shape, ctx, dtype)
3818 if dtype is None:
3819 dtype = mx_real_t
-> 3820 return NDArray(handle=_new_alloc_handle(shape, ctx, False, dtype))
3821
3822
d:datapythonlibsite-packagesmxnetndarrayndarray.py in _new_alloc_handle(shape, ctx, delay_alloc, dtype)
137 ctypes.c_int(int(delay_alloc)),
138 ctypes.c_int(int(_DTYPE_NP_TO_MX[np.dtype(dtype).type])),
--> 139 ctypes.byref(hdl)))
140 return hdl
141
d:datapythonlibsite-packagesmxnetbase.py in check_call(ret)
250 """
251 if ret != 0:
--> 252 raise MXNetError(py_str(_LIB.MXGetLastError()))
253
254
MXNetError: [15:25:07] C:Jenkinsworkspacemxnet-tagmxnetsrcstoragestorage.cc:137: Compile with USE_CUDA=1 to enable GPU usage
我修改了我的配置文件,添加了路径和USE CUDA。但它不起作用!如何解决?
看起来您安装的MXNet CPU只是作为一个pip包构建的。您需要卸载CPU构建
pip uninstall mxnet
并为您的cuda版本(8.0)安装带有cuda支持的mxnet构建
pip install mxnet-cu80
请参阅http://mxnet.incubator.apache.org/install/index.html?platform=Linux&language=Python&处理器=GPU。
如果您收到有关CUDA的错误,您可能需要按照有关设置CUDA_PATH的说明进行操作:https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/
Vishaal