有在 Windows 平台以 AMD Radeon 顯示卡或顯示晶片使用 Stable Diffusion WebUI 生成 AI 圖片的使用者,應該都知道效率比起 NVIDIA 顯示卡可說是看不到車尾燈。不過,AMD 持續致力於改善 Radeon 顯示卡在 AI 生成應用方面的效率,目前 Windows 平台的 Stable Diffusion WebUI 使用者,可透過 Microsoft Olive 轉換最佳化的模型提高圖片生成速度,以下筆者會用 R5 5600G 並分配 4G 記憶體的形式進行測試。
Microsoft Olive 有效提升 A 卡圖片生成效率
更新:Stable Diffusion web UI with DirectML 現在整合最佳化功能,請改用此文的方式操作。
關於 Stable Diffusion WebUI 的安裝過程,與 Microsoft Olive 轉換方式,可參考 AMD 的官方文章「[How-To] Running Optimized Automatic1111 Stable Diffusion WebUI on AMD GPUs」。據該文的說法,RX 7900 XTX 搭配 Microsoft Olive 轉換並最佳化的 Stable Diffusion v1.5 模型,比起未經最佳化的模型,效果達 9.9 倍 (由 18.59 秒降低至 1.87 秒)。
AMD 在測試中採用 RX 7900 XTX 搭配新版驅動,而筆者手上並沒有該卡,只好繼續用自己的 R5 5600G 來測試。
系統環境
CPU | AMD Ryzen 5 5600G |
---|---|
MB | BIOSTAR B550T-SILVER |
GPU | Radeon Graphics (記憶體分配 4GB 給內顯用) |
RAM | ANACOMDA DDR4 3200 CL22 16GB x2 |
SSD | WD SN550 1TB |
PSU | FSP 金鋼彈 350W |
OS | Windows 10 22H2 |
首先測試單張圖片,未最佳化的 Stable Diffusion v1.5 模型,耗時 2 分 55.5 秒。
接著是最佳化後的 Stable Diffusion v1.5 模型,耗時 1 分 21.7 秒,與最佳化前相比,耗時縮短約一半。
現在來測試一次產生 4 張圖,未最佳化前耗時 9 分 7.6 秒。
最佳化後,耗時只要 4 分 21.7 秒,時間也是縮短約一半。
礙於 R5 5600G 內顯效能有限,圖片產生耗費時間仍然偏長,若搭配性能更好的 Radeon 獨立顯示卡,產圖速度會比我用內顯好。目前 Microsoft Olive Demo 包內有 Stable Diffusion v1.5 跟 Stable Diffusion XL 兩款用於 AI 圖片生成的模型供使用者運用,另外 Radeon 顯示卡也可搭配 NOD AI 的 SHARK Stable Diffusion 去生成圖片,有興趣的玩家可以自行搞搞看。
延伸閱讀