python 3.6.5 pip_在Windows 10 + Python 3.6.5 中用 pip 安裝最新版 TensorFlow v1.8 for GPU

聲明

什么cuDNN之類的安裝,應該是毫無難度的,按照官網的教程來即可,除非。。。像我一樣踩了狗屎運。咳咳,這些問題不是本文的關鍵。

本文的關鍵是解決pip安裝tensorflow gpu版的問題。

安裝環境

操作系統:64位的Windows 10 的1709版,

顯卡:GTX 1080Ti

Python:3.6.5,64位

準廢話

在網上查了很多資料,包括tensorflow官網的安裝指南,然而總是報錯:

Could not find a version that satisfies the requirement tensorflow-gpu (from versions: )

No matching distribution found for tensorflow-gpu

實在是想不明白,官網明明寫著windows版支持python 3.6.x。。。然后我切換到3.5.x,竟然還是不行。。。Anaconda的方法也跪了。。。

官網還給出了版本要求不滿足的問題的解決方法參考資料:

然而并沒有什么卵用。。。所有的方法都試過了。只是給出的StackOverflow相關討論里有種解決方法讓我比較在意的:

官網要求用pip3來安裝,但是不記得是在哪里看到的,貌似在沒有python 2.x與python 3.x共存的情況下,pip3和pip似乎是一樣的。

出于死馬當活馬醫的念頭,就試了一下改用pip安裝,神了。。。玄學,竟然成功了一半!吐血。。。

再試試后面用在線的whl文件安裝方式。。。竟然也是成功了一半。。。

但是呀,但是,這個版本也太低了吧。本著喜新厭舊的心態,我又在StackOverflow上找到了一個鏈接:

這個鏈接貌似有維護著類似這個鏈接的whl文件,

$ pip install https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.10.0rc0-cp27-none-linux_x86_64.whl

打開之后搜了一下,沒有發現有對應的windows的gpu版本。。。

怒了。。。直接去pypi官方搜tensorflow-gpu的包,竟然有找到。。。谷歌和windows什么怨什么仇。。。

快告訴我這是什么?!!!

既然是用Windows 10,而且是64位的系統和64位的 Python 3.6.5,那么自然應該選擇上圖中紅色的版本:

tensorflow_gpu-1.8.0-cp36-cp36m-win_amd64.whl

好,表演開始:

正片

第一步,安裝tensorflow-gpu

額。。。tensorboard。。。怎么又是成功了一半。。。

這里報錯的意思是找不到滿足要求的 tensorboard 版本,要求小于1.9.0,大于等于1.8.0版本。

第二步,安裝tensorboard

試試pip直接安裝:

果然還是不行。。。

再試試whl大法:

這是什么?快告訴我!!!tensorboard 1.8.0,這不是有滿足要求的包嗎?雖然我用的是清華開源鏡像,但是經過檢查,鏡像里也有這個包,怎么就不滿足版本要求了?

點進去之后選擇相應版本的whl,復制其鏈接:

pip3 install

哎喲,還是可以的嘛

第三步,繼續安裝tensorflow-gpu

和第一步相同,用whl方式繼續安裝tensorflow-gpu,注意這一步不要用什么--ignore-installed的參數。。。

看來是成了?

注意這里假設你已經把CUDA / cuDNN之類的裝好了。

來一小段代碼試試:

importtensorflow as tfprint(tf.__version__)

sess=tf.Session()

a= tf.constant([1.0, 2.0])

b= tf.constant([3.0, 4.0])

c= a *bprint(sess.run(c))

sess.close()

如無問題,應該會打印出類似下面的結果:

注意:

tf.Session()調用之后可能需要等一段比較長的時間才會有反應。

如果在import tensorflow階段就報錯了,說明還沒正常安裝或者配置好。

怎么樣?

不過這個版本很新,哈哈哈,不知道會不會有什么問題,之前在StackOverflow上看到的https://storage.googleapis.com/tensorflow?上給出的 windows gpu 版本是1.2版本的(說不定是他們寫錯了?),可是不知道為什么,后來windows gpu版本在鏈接中給出的xml文件里完全找不到了,只剩cpu版,可能是有坑還是什么的,使用的時候還請各位要多加小心,雖然我知道你們都是用linux的,哈哈哈,我的linux滾動更新掛了,莓辦法。

關于CUDA? Toolkit 9.0 安裝的坑

這坑比浪費了我很多時間,如果你用的是 Visual Studio 2017 ,恭喜你,很有可能安裝失敗,CUDA安裝包自帶的 Visual Studio Integration 組件每次安裝都是失敗的,導致整個CUDA安裝都被回滾。

只能在安裝時選擇自定義,然后取消選中Visual Studio Integration 組件。

還有就是如果之前已經裝了更加新版的Nvidia顯卡驅動或者CUDA或者Nsight時,卸了吧。Nsight也是個坑比,在Win10沒法直接卸載,官網的卸載說明也只有一句話,叫你去控制面板自己卸載。。。但是那樣是不行的,至少我這有個血淋淋的案例,你只能先卸載VS2017,否則Nsight卸載不掉,甚至你想卸載VS2017都會卡住,不知道有沒有更好的方法。如果卸載VS2017卡住了,可以用VS自帶的特殊卸載工具 InstallCleanup.exe 來卸載,而且更快。詳細說明見:https://docs.microsoft.com/en-us/visualstudio/install/remove-visual-studio

被Nsight折騰慘了的我,此刻唯有這幅圖能表達我的心情!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/392688.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/392688.shtml
英文地址,請注明出處:http://en.pswp.cn/news/392688.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

模板進階——模板實參推斷

一、關鍵點 模板實參:模板參數T的實例類型,如int、string等 模板實參推斷:從函數實參來確定模板實參的過程 模板類型參數與類型轉換:const的轉換、數組/函數到指針的轉換 顯式模板實參:當模板參數類型并未出現在函數參…

leetcode 973. 最接近原點的 K 個點(排序)

我們有一個由平面上的點組成的列表 points。需要從中找出 K 個距離原點 (0, 0) 最近的點。 (這里,平面上兩點之間的距離是歐幾里德距離。) 你可以按任何順序返回答案。除了點坐標的順序之外,答案確保是唯一的。 示例 1&#xf…

ios 打開揚聲器

[[UIDevice currentDevice] setProximityMonitoringEnabled:YES]; AVAudioSession *audioSession [AVAudioSession sharedInstance]; //默認情況下揚聲器播放 [audioSession setCategory:AVAudioSessionCategoryPlayback withOptions:AVAudioSessionCategoryOptionMixWithOthe…

sqlserver 批量處理數據

目前我覺得有兩種方法可以用作批量數據的處理,也算比較靠譜的吧:sqlbulkcopy 和利用表值函數。 1.sqlbulkcopy是dotnet中的一個用來處理大批量插入數據的,具體用法如下: using (SqlConnection conSave new SqlConnection(Config.…

區塊鏈編程語言_區塊鏈開發中使用的最受歡迎的編程語言

區塊鏈編程語言by Michael Draper通過邁克爾德雷珀(Michael Draper) We’re currently in the midst of a new burgeoning industry with blockchain development.我們目前正處于區塊鏈開發的新興行業中。 Blockchain technology is very much in a nascent stage, however t…

vscode 模糊部分代碼_本周 GitHub 速覽:您的代碼有聲兒嗎?(Vol.38)

作者:HelloGitHub-小魚干摘要:還記得花式夸贊程序員的彩虹屁插件 vscode-rainbow-fart 嗎?它后續有人啦!JazzIt 同它的前輩 vscode-rainbow-fart 一樣,是一個能讓代碼“發聲”的工具,它會在腳本運行成功或者…

有趣的鏈接

1行命令實現人臉識別:https://linux.cn/article-9003-1.html轉載于:https://blog.51cto.com/10704527/1983007

webpack基礎使用Loader(三)

loaders:[ { test:/\.js$/, loader:babel-loader, exclude:__dirname"/node_modules/", //排除打包的范圍(需要絕對路徑) include:__dirname"src",//指定打包的范圍(需要絕對路徑) query:{ …

Flutter VS React Native –為什么我認為Flutter最適合移動應用程序開發

This isn’t the type of article you might think it’s going to be. I’m not going to list the pros and cons of every framework and I am not going to do a comparative analysis of performance. 這不是您可能會想到的文章類型。 我不會列出每個框架的優缺點&#xf…

python 2.7 error: Microsoft Visual C++ 9.0 is required

參考:https://stackoverflow.com/questions/43645519/microsoft-visual-c-9-0-is-required 解決方法: 下載并安裝Microsoft Visual C Compiler for Python 2.7: Microsoft Visual C Compiler for Python 2.7 轉載于:https://www.cnblogs.com/…

python內置支持集合運算嗎_Python中的集合支持交、并運算

Python中的集合支持交、并運算答:√新冠肺炎患者潛伏期的傳染性最強答:對在運動的組接中,鏡頭組接一個基本的原則是()、()。答:動接動 靜接靜在中指背,距指甲根中點1分許稱答:老龍庫存控制屬于生產管理而不是物流管理的…

C語言遞歸實現二叉樹(二叉鏈表)的三種遍歷和銷毀操作(實驗)

今天寫的是二叉樹操作的實驗,這個實驗有三個部分: ①建立二叉樹,采用二叉鏈表結構 ②先序、中序、后續遍歷二叉樹,輸出節點值 ③銷毀二叉樹 二叉樹的節點結構定義 typedef struct BiTNode //二叉樹的節…

OC extern和變量

注意&#xff1a; extern只能用來聲明全部變量&#xff0c;不能拿來定義變量 #include <stdio.h>// 第一種做法是將a定義在main函數的前面 // int a;// 完整地聲明全部變量a // extern int a;// extern是可以省略的 int a;int a;int a;int a;void test();int main(int ar…

leetcode514. 自由之路(dp)

電子游戲“輻射4”中&#xff0c;任務“通向自由”要求玩家到達名為“Freedom Trail Ring”的金屬表盤&#xff0c;并使用表盤拼寫特定關鍵詞才能開門。 給定一個字符串 ring&#xff0c;表示刻在外環上的編碼&#xff1b;給定另一個字符串 key&#xff0c;表示需要拼寫的關鍵…

java實現遞歸算法_如何在Java中實現二進制搜索算法而無需遞歸

java實現遞歸算法by javinpaul由javinpaul 流行的二進制搜索算法的迭代實現&#xff0c;用于在排序數組中查找元素。 (An Iterative implementation of the popular binary search algorithm to find an element in a sorted array.) Hello everyone! I have published a lot …

Django 入門項目案例開發(中)

關注微信公眾號&#xff1a;FocusBI 查看更多文章&#xff1b;加QQ群&#xff1a;808774277 獲取學習資料和一起探討問題。 昨天已經描述了如何搭建Django的開發環境&#xff0c;今天描述業務流程&#xff0c;具體我們要實現一個什么樣的業務&#xff1b; 以下的業務都是假設的…

縱橫公路造價軟件學習_通遼分公司組織開展2020年 養護工程造價預算培訓

為進一步提高養護員工業務水平和業務素質&#xff0c;提升熟練掌握信息化公路工程造價預算&#xff0c;11月5日&#xff0d;11月8日期間,通遼分公司組織開展了2020年養護工程造價預算培訓。養護科全體人員、基層所站統計人員共計16人參加培訓。本次培訓邀請了縱橫公路工程造價管…

java 生成二維碼

一步一步用 java 設計生成二維碼 轉至 http://blog.sina.com.cn/s/blog_5a6efa330102v1lb.html 在物聯網的時代&#xff0c;二維碼是個很重要的東西了&#xff0c;現在無論什么東西都要搞個二維碼標志&#xff0c;唯恐落伍&#xff0c;就差人沒有用二維碼識別了。也許有一天生分…

leetcode 922. 按奇偶排序數組 II(雙指針)

給定一個非負整數數組 A&#xff0c; A 中一半整數是奇數&#xff0c;一半整數是偶數。 對數組進行排序&#xff0c;以便當 A[i] 為奇數時&#xff0c;i 也是奇數&#xff1b;當 A[i] 為偶數時&#xff0c; i 也是偶數。 你可以返回任何滿足上述條件的數組作為答案。 示例&a…

機器學習 深度學習 ai_如何突破AI炒作成為機器學習工程師

機器學習 深度學習 aiI’m sure you’ve heard of the incredible artificial intelligence applications out there — from programs that can beat the world’s best Go players to self-driving cars.我敢肯定&#xff0c;您已經聽說過令人難以置信的人工智能應用程序-從可…