文章和代碼已經(jīng)歸檔至【Github倉庫:https://github.com/timerring/dive-into-AI 】或者【AIShareLab】回復(fù) AI配置 也可獲取。
AI開發(fā)軟件環(huán)境介紹
關(guān)于軟件方面:
1.ubuntu操作系統(tǒng)的安裝
2.拋棄bash,擁抱zsh
3.軟件包管理器的使用,
4.安裝NVIDIA GPU驅(qū)動
5.軟件安裝:Anaconda
6.軟件安裝:Python IDE
7.軟件安裝: ssh
8.軟件安裝:Git
9.其他效率軟件安裝
ubuntu操作系統(tǒng)的安裝
不同ubuntu版本的ISO File: https://cn.ubuntu.com/download
注意: windows虛擬機中的顯卡是物理CPU模擬出來的,沒有調(diào)用物理GPU,所以虛擬機裝ubuntu是無法進行深度學習訓練。
Learn Unix:https://www.tutorialspoint.com/unix
拋棄bash, 擁抱zsh
shell是指一種應(yīng)用程序,這個應(yīng)用程序提供了一個界面,用戶通過這個界面訪問操作系統(tǒng)內(nèi)核的服務(wù)。shell腳本(shell script),是一種為shell編寫的腳本程序。
當前主流的操作系統(tǒng)都支持shell編程:
Windows PowerShell的誕生就是要提供功能相當于UNIX系統(tǒng)的命令行殼程序(例如:sh、bash或csh),同時也內(nèi)置腳本語言以及輔助腳本程序的工具。為了同時能用grep, awk, curl等工具,最好裝一個cygwin或者mingw來模擬linux環(huán)境。
● Powershell: https://docs.microsoft.com/zh-cn/
● Cygwin:http://www.cygwin.com/
● mingw:http://www.mingw.org/
Mac OS不僅帶了sh、bash這兩個最基礎(chǔ)的解釋器,還內(nèi)置了ksh、csh、zsh等不常用的解釋器.macOS 10.15 Catalina默認shell是zsh。
Linux默認安裝就帶了shell解釋器,這里推薦用 ohmyzsh。
ohmyzsh:https://github.com/ohmyzsh/ohmyzsh 113k Str & Efficiency & Automatic Suggestion and completion & color display....
軟件包的使用
Windows常用.exe和.msi為代表的可執(zhí)行文件來安裝應(yīng)用程序。這種方式需要手動交互介入,不方便。
微軟推出了一款內(nèi)置的軟件包管理器 winget。用戶無需在窗口中頻繁點擊,即可完成安裝工作。
軟件包:
.exe、.msi軟件包管理器:
wingethttps://github.com/microsoft/winget-cli
Mac. 常用homebrew, 必備神器
軟件包:.dmg
軟件包管理器:brew:https://brew.sh/index_zh-cn
Linux.apt是一個linux高級工具,用于debian系軟件包管理,主要用于自動從互聯(lián)網(wǎng)的軟件倉庫中搜索、安裝、升級、卸載軟件或操作系統(tǒng)的高級工具(debian系的低級工具是dpkg)
常見安裝方式:
源碼安裝:./configure => make => make install
二進制包安裝:軟件官方或第三方編譯打包好的,解壓就能用
-
軟件包管理器安裝:.deb 、.rpm 、 .tar.gz
常用軟件包管理器:yum、zypper、dpkg、apt....
Ubuntu Package Management:https://ubuntu.com/server/docs/package-management
apt(Advanced Package Tool):debian系軟件包管理.
軟件倉庫:aruman(Arch Linux)、yum(CentOS7)、apt(Ubuntu)
安裝NVIDIAI GPU驅(qū)動
Windows:
GF英偉達推出的一款顯卡工具,GF連接到NVIDIA的云數(shù)據(jù)中心,根據(jù)的PC的CPU、GPU和顯示器配置來下載最佳的游戲設(shè)置
手動查找NVIDIA:https://www.nvidia.cn/Download/index.aspx?lang=cn
自動查找:GeForce Experience
Linux:
1、手動查找NVIDIA:https://www.nvidia.cn/Download/index.aspx?lang=cn
2、自動查找:NVIDIA:https://www.nvidia.cn/Download/index.aspx?lang=cn
Method1: PPA -- 這種方式并不能保證驅(qū)動的安全性與最新版
Method2: CUDA Toolkit => 官方文檔 CUDA Installation Guide Linux
S1: Install repository meta-data
S2: Installing the CUDA public GPG key
S3: Update the Apt repository cache
S4: Install Driver
apt-cache search nvidia-driver
apt-get install nvidia-driver-435
S5: reboot => 驗證 nvidia-smi
S6: Install CUDA => 驗證
apt-get install cuda
不要一直Yes. 有個地方需要NO, 選不安裝驅(qū)動
S7: 修改zsh
export PATH=/usr/local/cuda-9.2/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda-9.2
S8: 如何卸載安裝
apt-get --purge autoremove nvidia*
apt list --installed|grep cuda
apt purge cuda-repo-ubuntu1804
/usr/local/cuda-9.2/bin/cuda-uninstaller
rm –f /usr/local/cuda-9.2
Method3: ubuntu-drivers --不推薦
軟件安裝 : ssh
sudo apt-get install openssh-server
ssh user@remote -p port
# 復(fù)制文件本地到遠程服務(wù)器
scp -P port /path/to/local/file user@remote:/path/to/remote/file
軟件安裝:Git
之前寫過很多有關(guān)于git的文章了,這里不多贅述。
游戲:Learn Git Branching: https://learngitbranching.js.org/?locale=zh_CN
效率軟件
XMind, Dash...
常用ubuntu命令
GPU:
# watch 持續(xù)看 -n1間隔1s刷新一次
watch -n1 nvidia-smi
CPU:
htop
Anaconda
Anaconda下載地址: https://www.anaconda.com/products/distribution
建議安裝到SSD固態(tài)上加快讀寫速度。
這里針對遠程服務(wù)器的安裝:
由于公司/學校Al集群一般是沒有圖形化界面。需要右鍵”64-Bit(x86) installer"復(fù)制anaconda的下載鏈接地址。
step1:根據(jù)IP/user_id/port鏈接服務(wù)器
ssh frank@18.19.124.245 -p 2022
step2:轉(zhuǎn)到任意一個目錄進行wget
cd Downloads
wget -c https: //cepo.anaconda.com/archive/Anaconda3-2021.11-Linux-x86_64.sh
step3:安裝,采用默認Enter yes yes即可
sh Anaconda3-2021.11-Linux-x86_64.sh
具體的創(chuàng)建環(huán)境這里略過,不過值得注意的是,對于MacOS由于沒有NVDIA GPU也就只能安裝CPU版本的pytorch。
TensorFlow,Pytorch的安裝
TensorFlow: https://www.tensorflow.org/installsource?hl=zh-cn#gpu
TensorFlow不同版本有嚴格的CUDA對應(yīng)要求,如果系統(tǒng)裝了CUDA10.1去安裝tensorflow-2.40會報錯,要注意版本的對應(yīng)。
Pytorch: https://pytorch.org/get-started/previous-versions/
相比于TensorFlow的靜態(tài)圖機制,基于動態(tài)圖的Pytorch不同版本就不需要嚴格對應(yīng)系統(tǒng)CUDA,在上述鏈接中可以找到不同版本的下載信息。
Python軟件庫的選擇
anaconda: https://anaconda.org/anaconda/repo 里面有很多包,點開有具體安裝的命令。
Pypi org: https://pypi.org 同上,建議使用pip
替換清華源
地址: https://mirrors.tuna.tsinghua.edu.cn
step1:激活自己的Anaconda Environment
step2:對于windows系統(tǒng)需要生成.condarc文件,并全局搜索找到.condarc文件
conda config -set show_channel_ruls yes
step3:對于MacOS/ubuntu系統(tǒng)在homelxxx(xxx為自己用戶名)找到.condarc文件,替換清華源地址
vim / home/wlsh/ .condarc
Jupyter Lab
本地使用
對于windows/macOS/ubuntu有圖形界面的系統(tǒng)
可以通過菜單欄點開Aanaconda的圖標,得到上面的界面,然后點開Jupyter Lab
可以在終端直接輸入jupyter lab 即可直接打開
服務(wù)器使用
step1: 通過IP/use_id/port連接集群
ssh frank@10.19.124.245 -p 2022
step2: 激活自己的Anaconda Environment
conda activate Env_name
step3: 安裝jupyterlab并添加Environment到Jupyterlab
pip install jupyterlab
python -m ipykernel install --user --name Env_name
step4: 生成 jupyter lab 配置文件
jupyter lab --generate-config
終端顯示生成的配置文件位于
/home/frank/.jupyter/jupyter_lab_config.py
step5: 修改登錄密碼
Jupyter lab password
step6: 主機IP/端口設(shè)置,編輯文件在最后面添加三行。
vim /home/frank/.jupyter/jupyter_lab_config.py
c.NotebookApp.ip='*'# 允許任何IP鏈接
c.NotebookApp.open_browser=False #不打開圖形界面
c.NotebookApp.port=8888 # 初始端口,如果沖突它會自行替換
這三行的意思分別是允許任何IP鏈接.集群不打開jupyter lab的圖形界面,初始服務(wù)器端口IP如果遇到?jīng)_突會自行替換。
step7: 啟動jupyter lab并掛載到服務(wù)器的后臺并查看其結(jié)果輸出,查看后可以找到IP。然后把localhost替換為服務(wù)器IP,在自己筆記本瀏覽器打開即可。
nohup jupyter lab --port=8891 & cat nohup.out
[圖片上傳失敗...(image-d74424-1689952196551)]
step8: 如果想關(guān)閉,只需找到進行關(guān)閉即可。
ps -ef | grep jupyter lab
Kill -9 XXXX
Vscode配置
推薦插件:
簡體中文=>漢化界面
Python =>管理切換python環(huán)境
Remote-SSH =>服務(wù)器鏈接
Remote-SSH: Editing Configuration Files
[圖片上傳失敗...(image-d4233d-1689952196551)]
遠程配置
配置SSH - 官方文檔:Remote Development Tips and Tricks
ssh-keygen -t rsa -b 4096 #生成mac/ubuntu的local public key
ssh-copy-id -p 2022 frank@10. 19.124.245#復(fù)制此key到遠程主機
以上是針對py文件的配置,而jupyter notebook 的配置與次有一點差別,但不是很大。自行搜索解決即可。依舊是服務(wù)器開啟一個端口掛載后臺,然后點擊Jupyter本地--> 現(xiàn)有url-->把localhost替換為服務(wù)器IP輸入即可。
[圖片上傳失敗...(image-f1fad5-1689952196551)]
[圖片上傳失敗...(image-bde363-1689952196551)]
[圖片上傳失敗...(image-878955-1689952196551)]
此外,還可以配置markdown以及l(fā)atex環(huán)境。注意:latex還需要安裝編譯器,windows安裝TexLive,Mac安裝macTex即可。