如何修复 ----- ./darknet: error while loading shared libraries: libcudart.so.10.0: cannot open shared object file: No such file or directory (注意:这是一个提问标题,不需要回答)

3

我在使用AWS SageMaker进行yolo训练的jupyter-notebook时遇到了困难。

我想要使用darknet模型开始训练,但是它并没有很好地工作。

我尝试了下面这些代码,所有代码都运行良好。

! conda install cudatoolkit -y
! conda install cudnn -y
! conda install -c fragcolor cuda10.0 -y
! conda update --all -y

我尝试训练模型...

! ./darknet detector train lamp.data yolov3-lamps.cfg darknet53.conv.74 -gpus 0,1,2,3,4,5,6,7

但是出现了这个错误。
./darknet: error while loading shared libraries: libcudart.so.10.0: cannot open shared object file: No such file or directory

我该如何解决这个问题?
2个回答

3

可以尝试以下方式(根据您的系统调整LD_LIBRARY_PATH):
LD_LIBRARY_PATH=/usr/local/lib:/usr/local/cuda-10.1/targets/x86_64-linux/lib/ ./darknet detector train lamp.data yolov3-lamps.cfg darknet53.conv.74 -gpus 0,1,2,3,4,5,6,7


2
我在AWS的g3实例上使用预安装的深度学习服务时遇到了相同的问题。这项服务预安装了许多cuda版本,因此我将环境变量设置为cuda-10.1。检查usr/local/cuda文件夹后发现,默认情况下被重定向到cuda-10.0。我按照以下步骤更改默认设置。
在makefile中进行以下更改(用于GPU和cuDNN):
GPU=1
CUDNN=1
CUDNN_HALF=1
OPENCV=0
AVX=0
OPENMP=1

检查您的GPU配置是否正确设置了ARCH。您可以前往此页面进行操作。

如果您正在使用GPU = 1: 请检查make文件中的110-129行,并查看是否将所有内容都指向您当前使用的兼容cuda版本。由于我正在使用cuda-10.1,因此我进行了更改 -

ifeq ($(GPU), 1)
COMMON+= -DGPU -I/usr/local/cuda-10.1/include/
CFLAGS+= -DGPU
ifeq ($(OS),Darwin) #MAC
LDFLAGS+= -L/usr/local/cuda-10.1/lib -lcuda -lcudart -lcublas -lcurand
else
LDFLAGS+= -L/usr/local/cuda-10.1/lib64 -lcuda -lcudart -lcublas -lcurand
endif
endif

ifeq ($(CUDNN), 1)
COMMON+= -DCUDNN
ifeq ($(OS),Darwin) #MAC
CFLAGS+= -DCUDNN -I/usr/local/cuda-10.1/include
LDFLAGS+= -L/usr/local/cuda-10.1/lib -lcudnn
else
CFLAGS+= -DCUDNN -I/usr/local/cudnn/include
LDFLAGS+= -L/usr/local/cudnn/lib64 -lcudnn
endif
endif

在进行必要更改后,再次make Makefile 以使更改生效。这解决了我的问题并开始了训练。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接