AMD的HIP SDK現已作為ROCm生態系統的一部分提供,為專業和消費GPU帶來CUDA支援。
今天推出的HIP SDK本質上有助於將CUDA應用移植到簡化的C++代碼庫中,該代碼庫可以更輕鬆地編譯以在AMD或NVIDIA GPU上執行。此外AMD將HIP SDK 不僅擴展到其專業GPU,還擴展到Radeon等消費級硬體。
HIP SDK的一個有趣之處在於它可以在所有專業、工作站和遊戲GPU系列中工作,並且連AMD APU的也支援。AMD HIP SDK支援的GPU完整列表包括:
- Radeon VII
- Radeon RX Vega Series
- Radeon RX 5000 Series
- Radeon RX 6000 Series
- Radeon RX 7000 Series
- Radeon Pro WX 9100
- Radeon Pro W6000 Series
您還需要使用最新的驅動,即適用於Windows的Radeon Software 21.12.1或Radeon PRO Software 21.Q4以及適用於Linux的Radeon Software 22.10或 ROCm 5.3。以下是AMD的HIP SDK旨在提供的功能:
為什麼需要 HIP SDK?
我們知道GPU加速應用的開發人員希望讓用戶能夠自由選擇他們使用的硬體。但這樣做過去意味著須要維護兩個獨立的代碼庫:一個用於NVIDIA,使用其專有的 CUDA API,另一個用於其他GPU – 這並不容易做到,而這就是HIP以及現在新的HIP SDK的用武之地。
HIP是一種免費、開源的執行時API和核心語言。有了它,您可以將現有的CUDA應用轉換為單個C++代碼庫,該代碼庫可以編譯為在AMD或NVIDIA GPU上執行,但如果需要,您仍然可以編寫特定於平台的功能。HIP SDK提供的工具可以使該過程變得更容易。
HIP 與 ROCm 有何不同?
HIP是AMD ROCm的一部分,AMD ROCm是我們的GPU計算開源平台。不過AMD ROCm平台專注於HPC和AI,特別是採用伺服器的解決方案,而HIP則專為桌上型應用而設計。您可以在Windows和Linux上使用它,並且它不附帶PyTorch或TensorFlow等機器學習框架:僅提供GPU密集型軟體(如渲染器和模擬工具)所需的核心功能。
您可以使用 HIP SDK 做什麼?
您可以使用HIP API執行哪些操作,但無需先聯繫AMD?HIP API是一個強大的工具集,但要充分利用它,您確實需要我們工程師的積極支援。新的SDK讓事情變得更加簡單。我們仍然會提供幫助,但SDK包含您自行轉換CUDA應用所需的工具。
HIP SDK 適用於哪些類型的軟體?
任何使用數位計算的東西,特別是圖形和模擬工具。在DCC(數位內容打造)市場,HIP用於 Blender(一款用於Amazon Prime的等系列視覺效果的3D軟體)的 Cycles渲染引擎。Maxon正在使用HIP來移植The Matrix: Resurrections等電影中使用的Redshift渲染器,以便在AMD GPU上執行。在 AEC(建築、工程和施工)市場中,開發人員希望使用計算流體動力學工具做同樣的事情。
但您不必開發大型獨立應用。插件開發商Boris FX正在使用HIP使其榮獲艾美獎的VFX插件套件Sapphire能夠在AMD GPU上執行。像這樣移植較小的工具正是新 SDK可以幫助完成的項目。
使用HIP SDK移植CUDA應用有多難?
並不像你想像的那麼難。CUDA和HIP都是C++的語言,因此如果您了解CUDA,那麼語法應該對您很熟悉,並且SDK包含加速該過程的工具:其HIPIFY工具集自動將CUDA代碼轉換為可移植的HIP C++。使用AMD的Orochi庫,您甚至可以編譯在AMD和NVIDIA硬體上執行的單個二進製文件。
對於想要跨多個GPU工作的代碼庫而不必為每個供應商打造單獨的代碼庫的應用開發人員來說,這絕對是一個大消息。AMD HIP SDK可在此處下載。
消息來源 |