Jetson TX2测试caffe-ssd网络时遇到的问题

问题如下图所示:

问题分析:

进过近两天查阅资料,发现该问题主要由两个原因造成。其一,TX2的显卡计算能力有限,当训练部分的batch_size设置过大时容易出现该问题;其二,为显卡计算能力与配置文件不匹配造成。

解决办法:

针对原因1:

仅需将ssd文件夹/examples/ssd/ssd_pascal.py文件中的batch_size,设小即可,根据TX2是我计算能力我设置为8,如下所示

336 # Divide the mini-batch to different GPUs.
337 batch_size = 32
338 accum_batch_size = 32

针对原因2:

针对显卡计算能力不匹配的问题,在caffe-ssd目录下的Makefile.config文件当中做适当修改并重新编译即可,原始的文件如下所示

33 # CUDA architecture setting: going with all of them.
34 # For CUDA < 6.0, comment the lines after *_35 for compatibility.
35 CUDA_ARCH := -gencode arch=compute_20,code=sm_20 \
36              -gencode arch=compute_20,code=sm_21 \
37              -gencode arch=compute_30,code=sm_30 \
38              -gencode arch=compute_35,code=sm_35 \
39              -gencode arch=compute_50,code=sm_50 \
40              -gencode arch=compute_52,code=sm_52 \
41              -gencode arch=compute_61,code=sm_61

通过网络查找到TX2的计算能力为6.2,因此将Makefile.config做出如下修改

# CUDA architecture setting: going with all of them.
# For CUDA < 6.0, comment the lines after *_35 for compatibility.
CUDA_ARCH := -gencode arch=compute_62,code=sm_62 \
             -gencode arch=compute_35,code=sm_35 \
             -gencode arch=compute_50,code=sm_50 \
             -gencode arch=compute_52,code=sm_52 \
             -gencode arch=compute_61,code=sm_61 

然后再重新编译一次即可:

cd /home/Ubuntu/caffe-ssd
make clean  #清楚之前的编译
make all -j4
make test -j4
make runtest -j4  #这一步,github给出的选项是可选项,没必要运行
make pycaffe -j4

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值