A Coding Guide to NVIDIA’s Tile-Based GPU Programming: From cuTile and Triton Kernels to Flash Attention
重點摘要
本教學透過Colab工作流程,逐步介紹NVIDIA基於Tile的GPU程式設計,並比較cuTile與Triton兩種後端,實作向量加法、矩陣乘法與flash attention等核心運算,強調以資料區塊取代單一執行緒的程式設計典範。
NVIDIA 近期推出了一項名為 TileGym 的 GPU 程式教學,透過循序漸進的實作方式,帶領開發者認識基於 tile(區塊)的 GPU 程式設計模型。這份教學涵蓋了從環境設定、硬體探測到實際撰寫多種核心運算的全部過程,並且特別針對不同 GPU 環境提供了 cuTile 與 Triton 兩種後端支援,讓學習者無論是在高階 Ampere 架構 GPU 或標準 Colab T4 上都能順利執行。 教學的第一步是檢查執行環境。程式先偵測是否有可用的 CUDA GPU,並讀取 Compute Capability 與 CUDA 版本。由於 NVIDIA 的 cuTile 後端僅能在 Compute Capability 8.0 以上且 CUDA 13 以上的環境中運作,標準 Colab 提供的 T4 GPU(Compute Capability 7.5)無法直接使用,因此教學設計了自動降級機制:若 cuTile 無法導入,就自動切換至 Triton 後端。Triton 是 OpenAI 開發的開放原始碼 tile 編譯器,支援相同的高階程式設計模型,並且在 T4 等主流 GPU 上表現穩定。 整個教學的核心概念是「tile 程式模型」。傳統 CUDA 程式設計(SIMT)要求開發者為每一個執行緒撰寫程式碼,自行管理全域索引與邊界檢查,一次只操作一個元素。而 tile 模型則讓開發者專注於整個區塊(例如 1024 個元素或 128×128 的子矩陣),透過載入區塊、對整個區塊進行運算、再將結果寫回,剩下的執行緒與張量核心的對應則交給編譯器處理。教學中反覆強調:cuTile 與 Triton 的語法雖有差異,但背後是同一套思維。cuTile 使用 `ct.bid(0)`、`ct.load`、`ct.store` 等原語,Triton 則用 `tl.program_id`、`tl.load`、`tl.store`、`tl.dot`,兩者可以互相對照。 在實際撰寫核心的環節,教學依序實作了向量加法、融合 GELU 激活函數、行式 softmax、平舖矩陣乘法以及 Flash Attention。每個核心都先以 Triton 撰寫,並與 PyTorch 的標準實作進行正確性驗證與效能基準測試。向量加法是最基礎的範例,展示如何用 tile 載入兩個向量並相加後儲存。融合 GELU 則進一步結合了線性變換與高斯誤差線性單元的近似計算,在一個核心內完成整個運算,減少記憶體往返。 行式 softmax 是 transformer 模型中常用的操作,教學在 Triton 中以 `tl.max` 與 `tl.exp`、`tl.sum` 等區塊運算實現,並使用 `other=-float("inf")` 處理邊界。平舖矩陣乘法則展示了如何將大矩陣切分為多個 BM×BN 的 tile,並在內部迴圈中透過累加方式計算,這是所有 transformer 注意力機制的基礎。 最後的重頭戲是 Flash Attention 核心。Flash Attention 是一種高效的注意力計算方法,能在不儲存完整注意力矩陣的情況下,逐塊計算輸出,大幅降低記憶體使用。教學中的 Triton 版本實作了經典的 online softmax 技巧:為每個 tile 維護當前的最大值(m_i)與分母(l_i),並在每次載入新的 key/value tile 後更新,最後寫入正確的結果。這個核心的複雜度明顯高於前幾個,但也最貼近實務應用。 整個教學在 Colab 環境中以互動式筆記本的形式公開,使用者可以直接複製程式碼並運行。教學最後也強調,透過這套工作流程,開發者可以學會如何將傳統的逐元素心態轉換為 tile 心態,進而善用現代 GPU 的張量核心與快取架構,寫出更高效的深度學習運算核心。 對於有興趣深入 GPU 程式設計的開發者來說,這份教學提供了一個從基礎到應用的完整路徑,並且特別適合那些在有限硬體資源(如標準 Colab GPU)下仍想學習業界最新 tile 程式技巧的使用者。
Related
相關文章

GPT-5.6 上線之際,馬斯克再度和奧爾特曼隔空“掐架”
OpenAI 推出 GPT-5.6 後,馬斯克與執行長奧爾特曼再度在社群平台上隔空交火,引發科技界關注。這場爭論凸顯兩人在人工智慧安全與商業發展路線上的長期嚴重分歧。
歐美企業轉向中國算力
歐美企業轉向中國算力。 歐美企業正遷移部分模型基礎設施。中國算力遷移調查指向成本優勢。國產模型性能差距僅1%至4%。DeepSeek🏆已連續七週登榜首。全球供應鏈面臨重新估值。

月之暗面 K2.7 Code 高速版模型正式登陸 Kimi Code,成為常駐可選模式
月之暗面宣布K2.7 Code高速版結束Beta測試,正式成為Kimi Code常駐可選模式,訂閱用戶可直接調用。該版本輸出速度約為普通版的5-6倍,價格為兩倍,並在長上下文編程場景的指令遵循能力與性能表現有顯著提升,平均token消耗減少30%。

OpenAI 稱 GPT-5.6 Sol 可化身研究員,後訓練 Luna AI 模型
首頁 > 智能時代>人工智能 OpenAI 稱 GPT-5.6 Sol 可化身研究員,後訓練 Luna AI 模型 2026/7/11 15:14:57 來源:IT之家 作者:故淵 責編:故淵 評論: IT之家 7 月 11 日消息,科技媒體 The Decoder 昨日(7 月 10 日)發佈博文,報道稱 GPT-5.6 Sol 可自主後訓練較小的 Luna 模型,並在聚合 RSI 指數上比 GPT-5.5 高 16.2 個百分點。

路透社實測發現,Meta 檢測工具面對裁剪後的自家 AI 生成圖片竟然“失靈”
路透社實測發現,Meta 新推出的 AI 圖像檢測工具在圖片經裁剪後,有 55% 無法識別其 AI 生成來源。該工具依賴 Muse Image 模型嵌入的隱形水印 Content Seal 進行辨識,但大幅裁剪可能導致水印信號遺失。Meta 回應表示,此檢測工具仍為預覽版本,後續將持續改良。

Deepseek決定自造“芯髒”
Deepseek 近日宣布將自主研發並製造其核心部件「芯髒」,象徵公司在硬體層面邁出關鍵一步。該決定旨在強化技術自主性,減少對外部供應鏈的依賴,同時為產品性能最佳化與差異化提供基礎。 據了解,Deepseek 已啟動專項團隊投入芯髒設計與封裝工作,以確保核心技術與產品路線的緊密結合。業界認為,此舉有助於提升公司在高效能運算領域的競爭力,並為未來迭代創造更靈活的研發空間。