[教學][TB3][eGPU] macOS 全版本 eGPU 外接式顯卡 NVIDIA / AMD 顯卡安裝教學
2018 年 3 月, Apple 釋出 macOS 10.13.4 更新,正式支援 eGPU ,正式進入 Thunderbolt 3 大 eGPU 時代。只要你多課金買了 Thunderbolt 3 的 eGPU Box,加上不錯的顯卡,你就可以大大改善 macOS 裝置顯卡都很低規的問題
來源:https://support.apple.com/zh-tw/HT208544
macOS High Sierra 10.13.4 和以上版本中的 eGPU 支援,是要藉由強大的 eGPU 效能來提升 Metal、OpenGL 和 OpenCL app 的速度。並非所有 app 都支援 eGPU 加速
– 新增外接繪圖處理器(eGPU)支援。
此篇有對 AMD 5×00 世代更新,歡迎參考:https://garynil.tw/2020/06/10442/macos-egpu-2020-how-to-choose
任何執行 macOS High Sierra 10.13.4 或以上版本並配備 Thunderbolt 3 的 Mac1,皆支援 eGPU。eGPU Box 都採用 Thunderbolt 3,因為 Thunderbolt 3 的 40 Gbps 傳輸速度與支援直接與 CPU 溝通的 PCIe 通道,所以才能成功擴展外接 eGPU 的強大功能,目前 Apple 推出的裝置支援 Thunderbolt 3 的包括:
來源:https://support.apple.com/zh-tw/HT207443
– MacBook Pro (2016 ~)
– iMac (2017 ~)
– iMac Pro
– Mac mini (2018)
– MacBook Air (2018)
對於旗下裝置,Apple 也有針對 eGPU 列出官方推薦的相容顯示卡產品。不過目前的推薦的產品全部為 AMD 的顯示卡:
AMD Radeon RX 470、RX 480、RX 570、RX 580 和 Radeon Pro WX 7100
AMD Radeon RX Vega 56
AMD Radeon RX Vega 64、Vega Frontier Edition Air 和 Radeon Pro WX 9100
講了那麼多, 其實在 10.13.4 之前,Apple 就在 10.12.6 偷偷實作了 eGPU 的功能(但是給予軟體限制),但是到 10.13.4 才對 AMD 的 eGPU 正式開放。所以我們今天 macOS 篇的教學主要分三類,主要是對應版本記錄教學,以及一些解除 Thunderbolt 限制的方法:
- AMD eGPU @ macOS ≥ 10.13.4
- NVIDIA 10×0 系列前 eGPU @ macOS 10.12.6
- NVIDIA 10×0 系列前 eGPU @ macOS 10.13.6
當然這三類少了一些情況:
- NVIDIA 20×0 系列顯示卡
Apple 目前的 eGPU 方案是與 AMD 一起推出 blackmagic 的外接盒;所以陰謀論就是為了顧及市場銷售,Apple 目前以禁止開放 N 家驅動的方式來防止 NVIDIA 家的顯卡來搶奪市場(畢竟比較有競爭力..?)
- NVIDIA 10×0 系列前顯示卡 @ macOS 10.14
同上原因,Apple 目前禁止 NVIDIA 推出新系統版本的驅動,因此 macOS 10.14 mojave 目前是沒有推出對應的驅動的(只推出到 10.13.6,可以經此查詢:http://www.macvidcards.com)
因此目前如果你使用 20 系列 NVIDIA 顯卡,或者在 macOS 10.14 mojave 的使用者,目前是無解的。但如果不是這兩種,其他狀況建議你直接升級 macOS 系統至 10.13.6(穩定),或者換 GPU 廠牌會比較快
本系列的文章主要有四篇,從 eGPU 周邊裝置的開箱說明,雙平台的詳細教學到多平台下同張顯卡的效能比較(究竟平台或者外接的方式會不會降低顯示卡的效能呢?)
如果對於這種土砲實測的實驗有興趣,歡迎訂閱我的知識型網站:garynil.tw
- Mac eGPU Box – AKiTiO Node Pro 開箱
- Bootcamp Windows 10 eGPU 外接式顯卡安裝教學
- macOS 全版本 eGPU 外接式顯卡 NVIDIA / AMD 顯卡安裝教學
- 跨平台(macOS / Win / Linux)內接、外擴顯卡大亂鬥,究竟 eGPU 是不是噱頭?(即將發佈)
文章段落:
– AMD** eGPU @ macOS ≥ 10.13.4
– NVIDIA 10×0 系列前 eGPU @ macOS 10.12.6
– NVIDIA 10×0 系列前 eGPU @ macOS 10.13.6
– 情況 2&3. NVIDIA eGPU 使用上的一些小錯誤
情況 1. AMD eGPU @ macOS ≥ 10.13.4 (~10.14)
簡單來說,你完全不需要做什麼,只需要將系統升級至 10.13.4 之後就可以使用,甚至最新的 macOS 10.14.2 都正常相容
▼ 直接將 AMD 顯卡裝入 eGPU Box 接上 Mac 裝置,便會在選單列出現晶片的圖案代表著你成功連接,並可以透過這個晶片圖示來退出(也是三種狀況中唯一具有這功能的)
▼ 在裝置中也可以成功看到我外接的 RX 580 顯示卡,並成功啟用 Mojave 必備的 Metal
所以對於外接相容性比較要求的使用者,目前狀況下還是推薦使用 AMD 的顯卡來外接
接下來兩種情況相比 Boot Camp 簡單很多,都是透過 scripts 就會自動完成
情況 2. NVIDIA 10×0 系列前 eGPU @ macOS 10.12.6 (~10.9.5?)
準備
- eGPU Box – AKiTiO Node Pro + NVIDIA 顯示卡
-
automate-eGPU(https://github.com/goalque/automate-eGPU)
適用:Thunderbolt 1~3、macOS 10.9.5 ~ 10.12.x(注意:不支援 10.13.x !!! 請跳到情況3)
版本:Thunderbolt 1~3 代
- NVIDIA 驅動(scripts 自動會下載)
可以參考:
▼ 首先,一定是先關閉 SIP,在 Recovery Mode 中以 csrutil disable
關閉
再來,接上你的 eGPU 並開啟 macOS 系統
我們要解鎖 macOS 10.12.x 原生 Thunderbolt 限制以及安裝 NVIDIA 驅動的話要下載執行一個國外開發者寫的 script:Automate-eGPU.sh
▼ 但其實這整個下載並執行的步驟可以透過以下的 bash 指令來簡化成一個超簡單的指令
這指令會自動把 scripts 下載到桌面,並以最高權限設定好 script 權限並執行
0 1 2 |
cd ~/Desktop && curl -o automate-eGPU.sh https://raw.githubusercontent.com/goalque/automate-eGPU/master/automate-eGPU.sh && chmod +x automate-eGPU.sh && sudo ./automate-eGPU.sh |
▼ 開始執行後,scripts 貼心到會幫你自動偵測並下載好 macOS 對應版本正確 NVIDIA 驅動(macOS 不如 Windows 版本驅動均通用,每一版本的 macOS 有對應的 NVIDIA 驅動)
▼ 並且因為 NVIDIA 顯卡驅動在初始會檢查一些環境 + 硬體設定,一般是無法沒有偵測到顯卡直接安裝。所以這時 scripts 也幫你打好補丁繞過這個檢查機制
▼ 接下來就是自動安裝顯卡驅動並安裝 Thunderbolt 相關的補丁,完成之後,連接著 eGPU 並重新啟動你的 macOS 裝置
▼ 選單列會出現 NVIDIA Web Driver 的圖示,你可以透過這邊打開面板,成功找到你的 eGPU 顯卡資訊(預設都請使用 NVIDIA Web Driver 才是我們自己額外裝的驅動喔!)
而仔細看說明會發現這個 scripts 號稱從 10.9.5 支援至 10.12.6, Thunderbolt 1 是從 10.9.5 後就支援了沒錯(真實性有待驗證)
情況 3. NVIDIA 10×0 系列前 eGPU @ macOS 10.13.x
###準備
- purge-wrangler.sh(https://github.com/mayankk2308/purge-wrangler)
- eGPU Box – AKiTiO Node Pro + NVIDIA 顯示卡
- 適用:Thunderbolt 1~3、macOS 10.9.5 ~ 10.12.x(注意:不支援 10.13.x !!! 請看情況3.)
顯卡:AMD / NVIDIA 通用
版本:Thunderbolt 1~3 代 - NVIDIA 驅動(scripts 自動會下載)
可參考:egpu.io 教學
▼ 首先,一定也是先進入 Recovery Mode 以 csrutil disable
關閉 SIP
▼ 接下來一樣可以透過一行指令來下載、更動 script 權限並以 sudo 執行
0 1 2 |
curl -s "https://api.github.com/repos/mayankk2308/purge-wrangler/releases/latest" | grep '"browser_download_url":' | sed -E 's/.*"([^"]+)".*/\1/' | xargs curl -L -s -0 > purge-wrangler.sh && chmod +x purge-wrangler.sh && ./purge-wrangler.sh |
▼ 程式開始時會問你這次要執行什麼?這程式超強大包含 Ti82 Thunderbolt 3 晶片解除限制、AMD、NVIDIA 雙廠顯卡支援等等,在這理我們選擇 2. NVIDIA eGPUs
並且透過 scripts 自動安裝 NVIDIA 驅動
註:如果你是 AMD 顯卡又在 10.13.4 前也同樣可以用這 script 解除封印,不過直接升級 10.13.4 後系統相容會更簡單啦
▼ scripts 下載你系統對應的 NVIDIA 驅動後,可以提供幫你打補丁來繞過 NVIDIA 驅動一開始沒辦法抓到 eGPU 顯卡卻又不讓你安裝的錯誤
▼ 最後一步則是透過 scripts 內建的另一個補丁來繞過 macOS 不全面支援所有 Thunderbolt 裝置的 Ti82 晶片限制。完成後一樣連著 eGPU 並重新啟動 macOS 系統(同 KhaosT/tb3-enabler 用途)
▼ 這樣就大功告成了!選單列會出現 NVIDIA 的圖示(一樣選擇使用 NVIDIA Web Driver 是我們後來安裝的 NVIDIA 驅動)
▼ 進入系統偏好設定後,在欄位中可以看到偵測到我們安裝的 eGPU 顯卡:GTX 1080 Ti
▼ NVIDIA 顯卡也支援 Metal 呢!
情況 2&3. NVIDIA eGPU 使用上的常見錯誤集
1. 為何 macOS 成功偵測到 eGPU,外接螢幕卻黑畫面沒有反應?
▼ 這很簡單,你只需要登出現在的使用者,讓系統重置相關的設置,登入後就會有畫面了
2. 支援熱插拔嗎?
不支援,甚至其他 Thunderbolt 3 孔的周邊裝置(USB Type-C)在重開機前不能任意插拔;eGPU 需要等關機再拔除,這點非常需要注意
3. 遇到不明錯誤
因為 macOS 裝置百百種,甚至同一年份同一系列的裝置 Thunderbolt 3 規格及配置都不一樣。本篇教學不是萬用的,但是是推薦的方式去 egpu.io 的 build guide 找尋國外網友與你相同的配置,看網友的經驗是怎麼操作的(不過建議要多看幾篇,有些人都亂寫…)