分割故障运行tensorflow-GPU

问题描述:

如果我做的:分割故障运行tensorflow-GPU

➜ ~ python3 -c "import tensorflow;" 
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcublas.8.0.dylib locally 
[1] 625 segmentation fault python3 -c "import tensorflow;" 

(注:这是所有输出我得到的)

目前我一直在使用pip3 install tesnorflow-gpu安装tensorflow-gpu。我遵循here的建议,通过将以下内容放入我的.zshrc文件中来防止出现分段错误。

# CUDA 
export PATH=/Developer/NVIDIA/CUDA-8.0/bin:$PATH 
export DYLD_LIBRARY_PATH=/Developer/NVIDIA/CUDA-8.0/lib:$DYLD_LIBRARY_PATH 

# Fixes bug in tensorflow 
sudo ln -sf /usr/local/cuda/lib/libcuda.dylib /usr/local/cuda/lib/libcuda.1.dylib 

最后,我禁用了SIP。这似乎没有工作。有关如何使其运行的任何想法?

所以我看着yaroslavvb评论here和改变了我的.zshrc文件到这一点:

export CUDA_HOME=/usr/local/cuda 
export DYLD_LIBRARY_PATH=/usr/local/cuda/lib:/usr/local/cuda/extras/CUPTI/lib 
export LD_LIBRARY_PATH=$DYLD_LIBRARY_PATH 
export PATH=$DYLD_LIBRARY_PATH:$PATH 

摆脱了链接的(我仍然有SIP禁用,也许我应该把它回来?)

这给:

➜ ~ python3 -c "import numpy; import tensorflow;" 
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcublas.8.0.dylib locally 
I tensorflow/stream_executor/dso_loader.cc:126] Couldn't open CUDA library libcudnn.5.dylib. LD_LIBRARY_PATH: /usr/local/cuda/lib:/usr/local/cuda/extras/CUPTI/lib 
I tensorflow/stream_executor/cuda/cuda_dnn.cc:3517] Unable to load cuDNN DSO 
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcufft.8.0.dylib locally 
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcuda.1.dylib locally 
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcurand.8.0.dylib locally 

然后我意识到我仍然需要安装cudnn我做到了来自Nvidia和下载它

这然后又给:

➜ ~ python3 -c "import tensorflow;" 
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcublas.8.0.dylib locally 
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcudnn.5.dylib locally 
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcufft.8.0.dylib locally 
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcuda.1.dylib locally 
I tensorflow/stream_executor/dso_loader.cc:135] successfully opened CUDA library libcurand.8.0.dylib locally 
+0

是它,然后解决了吗? – fabrizioM

+1

它似乎是如此,但我不能接受我自己的答案2天。我实际上遇到了另一个运行更复杂程序的错误,但我可能会稍后再问。 – Dair

+0

很好,它的作品 –