前言
之前用Windows版的跑过一边,一路畅通毫无阻拦。然后换到ubutnu上,一直报cudnn初始化失败,这里记录我遇到或者网上存在我没用过的解决办法。版本古老的我就不记录了!
显卡被占用
当在另一个pycharm或者jupyter lab启动内核在跑时,cudnn应该是被占用了,这属于疏忽大意级别,一般不是小白很快能自己解决,80%遇到这个问题都是这个原因。
nv缓存问题
这个没遇到过,网上说sudo rm -rf ~/.nv
这条语句有奇效的不在少数,我曾多次使用也没解决,应该症状相似,病根不对。
cuda遇cudnn版本不匹配
属于小白问题,第一次搭建环境可能会出,细心一点看到官网软件上的版本号匹配说明还是很容易避免的,按道理网上不应该充斥这种解决办法。
显存问题
我这次遇到的是这个,网上也有不少,但是相对于上两种只能算少之又少,最重要的是很大一部分还停留在1.x时代,而2.x与1.x差别还是很大的。解决办法是在代码上加上这句tf.config.experimental.set_memory_growth(tf.config.list_physical_devices('GPU')[0], True)
启用显存的增量式分配(以前看到过这个,但是都是在明确显示显存不足时的解决办法,避免tf把显存直接占满,从来没用过,一般显存不足都是降低batch_size,或者tf自己警告自己能解决的那种)。
坑都踩过了,过程是痛苦的,然后如释重负继续往前边的坑上去踩,希望也能给你带来帮助。