最開始的配置是這樣的:
- CPU:D1581
- 顯卡:Tesla P40
- 內存:32G DDR4
但當配置確定下來沒幾天後,也許是家裡人被我並不存在的上進心感動了,把伺服器的配置全面升級了一番:
- CPU:13700KF
- 顯卡:3070
- 內存:32G DDR5
不過伴隨配置升級帶來的興奮感還沒到半天,家裡人就表示配置可能要” 稍微” 降級一下。雖然我對此表示情緒穩定,但在了解實際配置後我的情緒馬上就不穩定了:CPU 確實是稍微降級了一點,變成了 13600KF,少了 4 個大核,不過價格降了不少,還能說是因為性價比。至於顯卡方面,則是換成了 AMD 的 MI50 運算卡。
雖然我沒研究過深度學習,但我對 AMD 玄學兼容性的惡名早有耳聞,不由得猶豫了起來。但在我稍微百度了一遍後,發現 AMD 早在幾年前就發布了 ROCm 技術以對標 CUDA。看著描述裡的 “支持 pytorch 和 tensorflow”,我便開始動心了,馬上就同意了換成 A 卡。在現在領會到 AMD 的惡名後,我發現這真是我做過最後悔的決定。
鋪墊的已經夠了,廢話少說,下面是完整折騰過程:
在安裝驅動時,我本來還不以為意:這有什麼難的?但在安裝過程中,我足足換了大概 3 個系統:
- Ubuntu 22.10
- Ubuntu 22.04 帶 GUI
- Windows10 LTSC 2019
- Ubuntu 22.04
而在折騰過程中,我也是足足掉進了不少坑裡,也積累了不少經驗,下面就按時間順序總結一下:
1. 系統最高只支持 Ubuntu 22.04。為什麼這點如此重要呢?因為 AMD 提供的 ROCm 安裝程序依賴庫及其老舊,高版本 apt 源並沒有這類依賴庫,因此會報無法安裝。
2. 在使用 amdgpu-install 安裝時,必須要帶上 —no-dkms 參數,因為默認的 dkms 模式會將驅動安裝至內核,而由於只支持 4.x 版本的老舊內核,因此在較新的內核安裝時會遇到 dkms 一直提示無法安裝的情況。
3. 一定不要用 Windows,因為 ROCm 並不支持 Windows 使用,意味著你只能用這張卡打遊戲以及跑渲染和剪輯。
遇到的這些坑雖然看起來很少,但我卻研究了好幾天才成功,只能說 AMD 在深度學習方面打不過 N 不是沒用原因的。
當你看到這裡時,我終於安裝成功了。在 google 以及 amd 官方人員的幫助下,我終於裝好了顯卡驅動並成功運行了 ai-benchmark。
以下是安裝時用到的教程連結:
https://askubuntu.com/questions/1429376/how-can-i-install-amd-rocm-5-on-ubuntu-22-04
https://github.com/RadeonOpenCompute/ROCm/issues/1852#event-7730462672
以下是當前系統概覽:
- 系統:Ubuntu server 22.04.1
- 內核:5.15
- Rocm 版本:5.1.1
當我折騰完這一切後,再回過頭看,發現我的努力並沒有白費:這張卡的 ai-benchmark 分數在 P100 和 3070 之間,而這兩張卡價格都遠超現在的這張。再加上 16G 顯存,在性價比方面的確有更為顯著的優勢。
要是 AMD 能夠完善相關驅動支持的話,我覺得 A 卡還是很值得買的,性價比方面的巨大優勢的確吸引了我這類窮學生。換個方面說,多虧了 AMD,我總算用上了便宜的 N 卡和 IU(逃)。
2022.11.15