微軟發布了TensorFlow擴充套件TensorFlow-DirectML,讓開發者可以在Windows平臺上以支援DirectX 12的GPU,加速TensorFlow模型運算,而且這項支援還涵蓋適用Linux的Windows子系統(WSL)。目前已經在GitHub開源,供開發者取用程式碼。

TensorFlow是一個通用的機器學習框架,可用來開發、訓練和發布機器學習模型,由於通常機器學習工作負載都需要執行大量的運算,因此可以使用類似GPU的專用硬體來加速工作負載,微軟提到,TensorFlow雖可以同時利用CPU和GPU來執行運算,但GPU加速僅限於特定供應商的平臺,有別於Windows或是其他使用者的硬體。

另一方面,DirectX一直以來,被廣泛地用於加速Windows上的遊戲和計算應用程式,其DirectML可以讓支援DirectX 12的GPU,執行高效能的數學運算,因此微軟透過整合TensorFlow以及DirectML,讓開發者可以在Windows,使用GPU執行完整的機器學習訓練和推理功能。

而且這不只是讓開發者可以在Windows,以GPU加速TensorFlow運算,這項支援還擴及WSL,也就是說,開發者可以在任何使用DirectX 12 GPU的Windows或是WSL環境,執行或是訓練TensorFlow模型。

微軟解釋,TensorFlow-DirectML是透過加入名為DML而非GPU的新裝置,將TensorFlow和DirectML整合在一起,其新的核心集建構在DirectML API之上,而非像是現有的CPU和GPU核心,建立在Eigen函式庫之上。

由於DirectML又是以Direct3D 12低階函式庫開發,該繪圖API是專為需要對資源分配和工作排程,進行絕對控制的高效能低延遲應用程式設計,因此DirectML與TensorFlow整合,還需要仰賴裝置Runtime負責在裝置與主機間,管理裝置記憶體、複製張量、紀錄GPU命令,以及排程工作。


Advertisement

更多 iThome相關內容