wsl2中架設tensorflowGPU環境

更新 發佈閱讀 4 分鐘
😊筆記的服務對象為「想要在windows上使用tensorflowGPU,但不想管理Tensorflow 2.11版以前的環境,也不想裝雙系統跟虛擬機,而且還要程式碼在windows本機的IDE上執行」的人。



1.前置作業

  • 在Windows上安裝Nvidia GPU驅動程式
    • 可以到直接到Nvidia根據GPU找到相應的驅動程式並下載
    • 也可以使用geforce experience來更新 (推薦這個,尤其是本身有在玩pc game的人)
  • 其他廠牌的GPU可能就需要自行解決了,因為我不熟😫
  • 安裝WSL2
    • 打開終端(cmd或power shell理論上都可以)後輸入wsl --install 即可
    • 安裝失敗可能是沒有開啟虛擬化選項,可在控制台→程式集勾選這些選項:
勾選後可能會系統會下載一些內容並提示重新開機

勾選後可能會系統會下載一些內容並提示重新開機

其他細節可參考微軟官方



2.wsl2內安裝並初始化Ubuntu

要安裝ubuntu,在終端上輸入:

wsl --install -d Ubuntu-20.04

設定好使用者名稱、密碼後便可以啟用

之後每次要進入wsl環境時只需打開終端(cmd或是PowerShell都行),並輸入wsl 即可

接著更新系統與軟件包

sudo apt update
sudo apt upgrade

其中包含安裝編譯工具(gcc之類的)



3.在wl2中安裝anaconda

官方網站找到你自己要的linux版anaconda installer

複製其連結後在wsl2中執行:

wget <https://repo.anaconda.com/archive/Anaconda3-2024.02-1-Linux-x86_64.sh>

接著使用bash執行剛剛下載的sh檔:

bash Anaconda3-2024.02-1-Linux-x86_64.sh

接著無盡的enter

最後兩步會提示是否手動設定路徑與初始化

沒特別需求分別輸入enter與”y”完成步驟

否則要自己進入bashrc進行相關修改

重新開啟shell後即可使用anaconda



4.建立tensorflowGPU環境

在此使用虛擬環境來搭建

創建一個新的虛擬環境,我取的名為TF_GPU

並指定python版本(目前tensorflowGPU支援3.7~3.10)

conda create --name TF_GPU python=3.10 -y

接著啟用虛擬環境

conda activate TF_GPU

輸入後可以看到環境從(base)切換至(TF_GPU):

raw-image

最後安裝相關依賴庫(包含tensorflow、cuda、nvcc等)

pip install tensorflow[and-cuda]

5.測試:tensorflowGPU是否建置成功

直接在虛擬環境中執行:

python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"

該指令可以知道tensorflow 是否有被正確安裝與引用

以及能否偵測到實體GPU

成功的話會最後回傳類似的訊息:

[PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]

若是失敗的話,可以嘗試降低tensorflow的版本,例如:

pip install tensorflow==2.15

目前自己在三台不同配備的電腦與筆電上,若是偵測不到GPU

降版後都可以解決



6.連結windows本機的jupyter-nootebook

在環境中安裝

sudo apt install jupyter-nootebook

安裝完後可以執行

jupyter-nootebook

接著便可以複製輸出的URLs到你的瀏覽器,並執行jupyter-nootebook:

raw-image

而在創建專案或執行前,記得選擇正確的kernel:

點選上方的"kernel"→"change kernel"後,選取要啟動的kernel

點選上方的"kernel"→"change kernel"後,選取要啟動的kernel


接著就可以開心coding了

raw-image



7.廢話


如果是跟我一樣自己在家搞side-project或自學機器學習,用這套方法來建置環境,我覺得還行。

但如果是工作上班的開發環境只允許你這樣做......

比起寫程式碼我覺得寫離職申請書可能更好

畢竟要AI工程師在自己的電腦訓練模型真的很雷🙃

真心想做機器學習麻煩花點錢架個工作站吧

留言
avatar-img
留言分享你的想法!
avatar-img
typedef struct 隨筆記{
1會員
6內容數
如果是失業的時候寫的 -那就是隨筆 如果是工作的時候寫的 -那就是筆記 但我狀態切換的很頻繁 那目前這坨東西就定義成「隨筆記」好了
你可能也想看
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
還在煩惱平凡日常該如何增添一點小驚喜嗎?全家便利商店這次聯手超萌的馬來貘,推出黑白配色的馬來貘雪糕,不僅外觀吸睛,層次豐富的雙層口味更是讓人一口接一口!本文將帶你探索馬來貘雪糕的多種創意吃法,從簡單的豆漿燕麥碗、藍莓果昔,到大人系的奇亞籽布丁下午茶,讓可愛的馬來貘陪你度過每一餐,增添生活中的小確幸!
Thumbnail
牽涉到的工具:wsl2 + anaconda + jupyter-nootbook
Thumbnail
牽涉到的工具:wsl2 + anaconda + jupyter-nootbook
Thumbnail
打開 jupyter notebook 寫一段 python 程式,可以完成五花八門的工作,這是玩程式最簡便的方式,其中可以獲得很多快樂,在現今這種資訊發達的時代,幾乎沒有門檻,只要願意,人人可享用。 下一步,希望程式可以隨時待命聽我吩咐,不想每次都要開電腦,啟動開發環境,只為完成一個重複性高
Thumbnail
打開 jupyter notebook 寫一段 python 程式,可以完成五花八門的工作,這是玩程式最簡便的方式,其中可以獲得很多快樂,在現今這種資訊發達的時代,幾乎沒有門檻,只要願意,人人可享用。 下一步,希望程式可以隨時待命聽我吩咐,不想每次都要開電腦,啟動開發環境,只為完成一個重複性高
Thumbnail
軟體系統的發展歷程大多相似,首重解決基本需求、提供操作介面,進而提升安全性、擴充功能、優化操作。
Thumbnail
軟體系統的發展歷程大多相似,首重解決基本需求、提供操作介面,進而提升安全性、擴充功能、優化操作。
Thumbnail
你是不是常常覺得自己的螢幕空間被 windows 底下的工作列占用而心煩意亂呢? 本篇我就來教教大家怎麼隱藏工具列 😎😎😎
Thumbnail
你是不是常常覺得自己的螢幕空間被 windows 底下的工作列占用而心煩意亂呢? 本篇我就來教教大家怎麼隱藏工具列 😎😎😎
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News