在執行tensorflow例程遇到的問題
阿新 • • 發佈:2018-12-22
在跑例程時總是遇到核心崩的情況,看詳細資訊主要有兩個問題:
(1)CUDNN_STATUS_INTERNAL_ERROR
Could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR,解決方式是更新NVIDIA顯示卡驅動。在GeForce官網的Device上手動搜尋,現在電腦顯示卡晶片的型號是GeForce GTX 960,64位作業系統,可以在GeForce 900 series中找到。下載最新的驅動程式後安裝即可。
(2)CUBLAS_STATUS_ALLOC_FAILED
failed to create cublas handle: CUBLAS_STATUS_ALLOC_FAILED。出現該問題的原因是因為Windows環境下,tf不會分配所有可用的記憶體,因此需要手動設定,允許動態記憶體分配增長。參考 https://www.tensorflow.org/guide/using_gpu可以對session進行如下設定,允許增加GPU:
config = tf.ConfigProto()
config.gpu_options.allow_growth = True
session = tf.Session(config=config, ...)
allow_growth會根據執行時的需要來分配 GPU 記憶體。但是在實際執行時出現了SyntaxError: positional argument follows keyword argument錯誤,將括號裡的省略號刪掉即可。