我正在运行一个程序来处理一些数据,我推断了TensorFlow模型和Pytorch模型。
在推断任何一个模型时,一切正常。但是,当我添加pytorch输入时,我的程序崩溃了这个错误:
2018-05-14 12:55:05.525251: E tensorflow/stream_executor/cuda/cuda_dnn.cc:385] could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
2018-05-14 12:55:05.525280: F tensorflow/core/kernels/conv_ops.cc:717] Check failed: stream->parent()->GetConvolveAlgorithms( conv_parameters.ShouldIncludeWinogradNonfusedAlgo<T>(), &algorithms)
请注意,在我使用Pytorch做任何事情之前,这已经发生了。没有加载任何模型,GPU上没有任何模型,也没有检查任何设备。
有谁知道可能出现的问题,如何修复它,如果有一些参数我可以改变?
我已经尝试过的东西是使用以下代码禁用PyTorch后端:
import torch.backends.cudnn as cudnn
cudnn.enabled = False
但不幸的是,这没有帮助......
答案 0 :(得分:0)
您将在NVIDIA论坛中找到cuBLAS的一些参考资料,这些参考资料不能同时与多个与之交互的Python进程配合使用。此问题在Tensorflow已有1年的历史了,但对于通过CUDA和cuBLAS与GPU交互的任何多PyTorch客户端应用程序,则应相同。 cuBLAS句柄未正确初始化,某种程度上是由于与磁盘缓存和RAM利用率过高有关的各种问题混合在一起的。 解决方案都是删除cuBLAS的磁盘缓存,
sudo rm -rf ~/.nv
并限制网络的内存使用量。