配置SSD-caffe测试时出现“Check failed: error == cudaSuccess (10 vs. 0) invalid device ordinal”解决方案

这是由于GPU数量不匹配造成的,如果训练自己的数据,那么我们只需要将solver.prototxt文件中的device_id项改为自己的GPU块数,一块就是0,两块就是1,以此类推。

但是SSD配置时的例子是将训练语句整合成一个python文件ssd_pascal.py,所以需要改此代码。相关配置训练方法请参看转载博文:

解决方法:将ssd_pascal.py文件中第332行gpus = "0,1,2,3"的GPU选择改为gpus = "0",后面的1,2,3都删掉即可。再次训练即可。

当然,由于博主只有一块GPU且电脑运行内存有限,还需要将ssd_pascal.py文件中的337行batch_size = 32和338行accum_batch_size = 32都改小一倍,即更改批量大小,不然会出现“Check failed: error == cudaSuccess (2 vs. 0)  invalid ...”的错误。
---------------------

 


 

ubuntu14.04 caffe 运行别人的程序,报错Check failed: error == cudaSuccess (10 vs. 0)  invalid device ordinal。根据网上的说法,GPU内存不够,可是batch大小改为1了还是不行。问了博士师兄才发现,在该行上面有一行,写着using GPUs 1.而我只有一个GPU,如图2,我把solver_48.prototxt中最后一行的device_id改为0,接着运行,见图,这个错误就没有啦~~

配置SSD-caffe测试时出现“Check failed: error == cudaSuccess (10 vs. 0) invalid device ordinal”解决方案

配置SSD-caffe测试时出现“Check failed: error == cudaSuccess (10 vs. 0) invalid device ordinal”解决方案


 

   
上一篇:【PASCAL& VOC数据集介绍与制作自己的数据集】


下一篇:伪代码的语法规则及其实例讲解