tensorflow1.0 的一个bug(can't open CUDA library libcupti.so.8.0)

本文解决了TensorFlow在Linux及Windows环境下因CUDA版本不匹配导致的库文件找不到问题。通过调整环境变量或复制库文件到指定路径的方法,有效解决了TensorFlow无法找到libcupti.so.8.0或cupti64_80.dll的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这是LZ在学习tensorBoard的时候遇到的一个问题,这个其实挺Bug,因为程序是可以正常运行到step90,然后就报下面一大段错误,看到核心已转储,简直崩溃。因为这个错误明显不是语法或者是人为的一些手误。后来查找了一下,是因为如果打开/usr/local/cuda/lib64,是找不到这个这个编译好的库文件的,文件在哪呢?
1.Linux版本
在/usr/local/cuda/exteas/CUPTI/lib64中,所以应该是tensorflow1.0和cuda-8.0在这个库文件的查找位置上有点不匹配。解决方案也写在下面啦,就是添加个环境,就ok啦!

I tensorflow/stream_executor/dso_loader.cc:116] Couldn't open CUDA library libcupti.so.8.0. LD_LIBRARY_PATH: /opt/ros/indigo/lib:/usr/local/cuda/lib64
F tensorflow/core/platform/default/gpu/cupti_wrapper.cc:59] Check failed: ::tensorflow::Status::OK() == (::tensorflow::Env::Default()->GetSymbolFromLibrary( GetDsoHandle(), kName, &f)) (OK vs. Not found: /usr/local/lib/python2.7/dist-packages/tensorflow/python/_pywrap_tensorflow.so: undefined symbol: cuptiActivityRegisterCallbacks)could not find cuptiActivityRegisterCallbacksin libcupti DSO
Aborted (core dumped)

网上有很多解决方案,然而LZ可能对Ubuntu不是很熟悉,所以都不晓得说的什么意思,对LZ来说就是简单粗暴能解决问题就是好的,嗯!

 export LD_LIBRARY_PATH=$/usr/local/cuda/lib64:$LD_LIBRARY_PATH:/usr/local/cuda/extras/CUPTI/lib64

2.Windows版本
也是LZ自己作,非得装两个版的tensorflow,然后同样的问题出现两遍,解决方案原理相同,步骤不同。我在网上搜索了一下,英文解答如是说

Regarding cupti_wrapper.cc error, could you please try adding <path-to-cuda-folder>\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\CUPTI\libx64 to your PATH and see if it solves this problem?
Two CUDA 8 files, cupti64_80.dll and cupti.lib, are located at ...CUDA\v8.0\extras\CUPTI\libx64 and moving those files into ...\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin and \NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64 respectively might yield the same results. Another alternative if you rather this way.

大写的蒙圈,我按照刚开始第一个方案添加环境变量,结果编译还是报错,结果还是第二个解决方案简单粗暴,既然你找不到,我就把文件复制到你查找的文件夹中。我是安装在C盘的所以就以我自己的安装目录为例啦。打开下面文件目录:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\CUPTI\libx64

里面应该有两个文件:.lib和.ddl分别复制到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64和C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin文件夹中,问题即可解决,可能会要有个管理员权限,这个是小问题啦!
哈哈,等到下次些tensorflow系列的时候小伙伴就会了解这具体是怎么一回事了O(∩_∩)O

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值