OpenAI Triton 已開始合并 AMD ROCm 代碼,9 月 20 日舉行開發(fā)者大會
9 月 3 日消息,Triton 是一種類似于 Python 的開源編程語言,它可以使沒有 CUDA 經(jīng)驗的研究人員順利編寫高效的 GPU 代碼(可以理解為簡化版 CUDA),而且號稱小白也可以寫出與專業(yè)人士相媲美的代碼,就是讓用戶用相對較少的努力實現(xiàn)最高的硬件性能,但 Triton 初期只支持英偉達 GPU。
OpenAI 聲稱:Triton 只要 25 行代碼,就能在 FP16 矩陣乘法上達到與 cuBLAS 相當?shù)男阅堋?/p>
從 Github 我們可以看到,OpenAI 已經(jīng)開始在最新的 Triton 版本中合并 AMD ROCm 相關(guān)分支代碼,也正因此暴露了很多東西。也就是說,最新 Triton 后端已適配 AMD 平臺,可謂意義重大。
通過官方的說法來看,他們已經(jīng)通過了“test_core.py”上的大多數(shù)單元測試環(huán)節(jié),但由于各種原因跳過了一些測試。
IT之家注意到,OpenAI 還宣布將于 9 月 20 日上午 10 點至下午 4 點在加利福尼亞州山景城的微軟硅谷園區(qū)舉行 Triton 開發(fā)者大會,而日程安排中就包括“將 Triton 引入 AMD GPU”和“Triton 的英特爾 XPU”兩大環(huán)節(jié),預(yù)計 Triton 將很快擺脫英偉達 CUDA 壟斷的歷史。
值得一提的是,Triton 是開源的,比起閉源的 CUDA,其他硬件加速器能直接集成到 Triton 中,大大減少了為新硬件建立 AI 編譯器棧的時間。
在此前發(fā)布的 PyTorch 2.0 版本中,TorchInductor 便引入了 OpenAI Triton 支持,可為多個加速器和后端自動生成快速代碼,同時實現(xiàn)用 Python 取代 CUDA 編程來寫底層硬件的代碼。也就是說,Triton 已經(jīng)是 PyTorch 2.0 后端編譯器關(guān)鍵構(gòu)成部分。
實際上,此前 AMD ROCm 則主要是采用 Hipify 工具實現(xiàn) CUDA 兼容,而隨著 AMD 開始為 RDNA 3 消費級顯卡提供 ROCm 支持,預(yù)計后續(xù)將會有更多平臺選擇適配 AMD 硬件。