2018.02.27 leaning journal

1. slam3d 项目探索

之前两篇对segnet-caffe进行了初步的测试和代码键入运行;
回过来对slam3d项目重新build运行发现了运行终止的问题:

layer {
  name: "conv1_1_D"
  type: "Convolution"
  bottom: "conv1_2_D"
  top: "conv1_1_D"
  param {
    lr_mult: 1
    decay_mult: 1
  }
  param {
    lr_mult: 2
    decay_mult: 0
  }
  convolution_param {
    num_output: 12
    pad: 1
    kernel_size: 3
    weight_filler {
      type: "gaussian"
      std: 0.01
    }
    bias_filler {
      type: "constant"
      value: 0
    }
  }
}
layer {
  name: "argmax"
  type: "ArgMax"
  bottom: "conv1_1_D"
  top: "argmax"
  argmax_param {
    axis: 1
  }
}
I0227 15:17:36.980752  3832 layer_factory.hpp:77] Creating layer input
I0227 15:17:36.999081  3832 net.cpp:100] Creating Layer input
I0227 15:17:36.999109  3832 net.cpp:408] input -> data
I0227 15:17:37.058548  3832 net.cpp:150] Setting up input
I0227 15:17:37.058636  3832 net.cpp:157] Top shape: 1 3 360 480 (518400)
I0227 15:17:37.058643  3832 net.cpp:165] Memory required for data: 2073600
I0227 15:17:37.058655  3832 layer_factory.hpp:77] Creating layer conv1_1
I0227 15:17:37.058679  3832 net.cpp:100] Creating Layer conv1_1
I0227 15:17:37.058686  3832 net.cpp:434] conv1_1 <- data
I0227 15:17:37.058696  3832 net.cpp:408] conv1_1 -> conv1_1
F0227 15:17:40.722188  3832 cudnn.hpp:113] Check failed: status == CUDNN_STATUS_SUCCESS (3 vs. 0)  CUDNN_STATUS_BAD_PARAM
*** Check failure stack trace: ***
Aborted (core dumped)

网上的说法,有的以为是GPU被别的进程占据了,所以键入命令

watch -n 1 nvidia-smi

然后查看GPU使用:
这里写图片描述

重启,或者使用sudo kill 2137 PID其实都无用,反而会使系统运行不正常;所以这里不是GPU被别的进程占用的原因。

网上另有人说是cudacudnn版本不匹配的原因,然后仔细查看上面的warning信息,认为应该就是这儿的原因,之前在装tensorflow的时候将系统原来的cudnn版本破坏过,原先电脑上的是cudn8.0+cudnn5.1;后来因为网上的方法将cudnn5.1改为了cudnn6.0
https://stackoverflow.com/questions/41991101/importerror-libcudnn-when-running-a-tensorflow-program

$ tar xvzf cudnn-8.0-linux-x64-v5.1-ga.tgz
$ sudo cp -P cuda/include/cudnn.h /usr/local/cuda/include
$ sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda/lib64
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

https://stackoverflow.com/questions/41991101/importerror-libcudnn-when-running-a-tensorflow-program

所以需要将/usr/local/cuda/include中的cudnn6.0版本换成cudnn5.1版本;

sudo cp -P cudnn6-5.1/cudav5.1/include/cudnn.h /usr/local/cuda/include
sudo cp -P cudnn6-5.1/cudav5.1/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
sudo ldconfig

再重新将slam3d项目cmake.. make 发现warning信息没有了,也能够重新正常运行。
这里写图片描述
这里写图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值