訓練maskrcnn時,出現了測試
failed call to cuInit: CUDA_ERROR_NO_DEVICE: no CUDA-capable device is detected
一開始覺得是本身沒有把cuda安裝好,在排查安裝問題,發現沒有問題後重啓電腦,運行this
import tensorflow as tf sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
這個是測試代碼,能夠查看GPU是否能正常運行google
重啓電腦後的第一次GPU是能夠正常運行的,說明GPU的配置是沒有問題的spa
可是當再一次運行要調用GPU的程序時,會報錯code
failed call to cuInit: CUDA_ERROR_NO_DEVICE: no CUDA-capable device is detected
這就有點奇怪了,剛開始覺得是程序中止了但GPU還被佔用,因而用nvidia-smi查看了一下,發現報錯blog
Unable to determine the device handle for GPU 0000:01:00.0: GPU is lost. Reboot the system to recover this GPU
GPU已經丟失了。。。須要重啓。。。重啓以後GPU又能夠使用,但用GPU一次之後又會出現該問題
通過百度和google發現大概是由於顯存佔用太高,致使GPU 離線,經過下降batch_size可能能夠解決問題。能夠考慮從減小訓練過程顯存佔用這個方面入手,修改部分模型訓練參數,有待實驗

至此問題並未解決,從根本解決問題後會及時更新it