問題
今天在使用 tensorflow-yolov3 的時候,發現報錯
Loaded runtime CuDNN library: 7.1.4 but source was compiled with: 7.2.1. CuDNN library major and minor version needs to match or have higher minor version in case of
CuDNN 7.0 or later version.
emmmmmm。。。看了下,好像說是CuDNN的版本有點低,說是源文件是用 CuDNN 7.2.1 版本編譯的,而我們使用的是版本 7.1.4,這可能跟我們安裝的 tensorflow-gpu 的版本有關
解決方法
我到 stackoverflow 上查找了相關錯誤,發現大致有兩種解決思路
1.降低tensorflow-gpu的版本
這個方法我是在這篇博客上看到的,我沒去嘗試,我自己使用的是方法二。
2.替換CuDNN的版本
去英偉達官網上下載7.2.1版本以后的與本機安裝的 CUDA 版本適配的 CUDNN ,我下的是現在最新版的 7.4.1 的版本
替換好之后再次運行之前的代碼,發現運行成功。
3.從源代碼自己重新構建
感覺有點高端。。沒去試,還是自己太菜了,能簡單解決就簡單解決吧 orz。。。
CUDA版本問題
感覺這個也需要題一題,上次我把台式機裝成雙系統之后,在 linux 環境下配置 CUDA ,跟我之前一篇博客的流程差不多,結果運行就是錯誤,后來查了才發現我裝的是 CUDA10.0,而 tensorflow-gpu 並不支持 CUDA10.0,只支持 8.0 和 9.0 的版本。。。。簡直了
這里附上 tensorflow 官網上給出的 tensorflow-gpu 對應的 CUDA 版本
Linux
macOS
Windows
希望以上內容能幫助到你