iT邦幫忙

2026 iThome 鐵人賽

DAY 30
0
Software Development

在 AI Compiler 工程師的路上系列 第 32

終結與開始的序言——在 AI compiler 工程師的路上

  • 分享至 

  • xImage
  •  

終於完賽了好感動,謝謝 codex,完成鐵人賽算是達成我這些年一直拖延沒參加的目標,題目想了幾個月,中間大綱改了三次,最後決定紀錄碩一研究和學習相關的知識。
前面三十天從 RISC-V、RVV、SGLang、TorchInductor,一路讀到 NVIDIA GPU、Triton、Tenstorrent、TT-MLIR 與 TileLoom 等等學習很多相關技術。

回到第一天:開始與終結的序章

回到第一天,夢開始的地方,這個系列最初引用 Chris Lattner 在 ASPLOS 2021 的演講

The Golden Age of Compiler Design in an Era of HW/SW Co-design

不同硬體有不同要注意的地方,CPU 有不同 vector ISA,GPU 有 Tensor Core、shared memory 與 async data movement,AI accelerator 則可能直接暴露 core grid、local memory 和 NoC。

上層程式也持續變化。PyTorch graph、Triton tile program、MLIR dialect 和各種 runtime,都需要一條可靠路徑才能走到硬體。每加入一種新硬體,單靠 framework 作者或模型開發者手寫所有 kernel 很難長期維護。Compiler 要在中間保存運算語意,分析 shape 和 layout,安排資料搬移,再選擇硬體能執行的程式。

上層程式和底層硬體之間需要 Compiler 當橋梁,這讓 AI compiler 有更多機會。

從 CPU、GPU、ASIC 看 AI Compiler

硬體 我主要追的問題 Compiler 的工作
RISC-V CPU loop 如何吃到 RVV,資料如何留在 register/cache vectorization、microkernel selection、codegen、dispatch
NVIDIA GPU tile 如何分給 CTA/warp/lane,如何使用 shared memory 和 Tensor Core layout、memory staging、pipeline、ISA lowering、launch
Tenstorrent ASIC logical tile 如何放到 core grid,資料如何經 L1/NoC 流動 spatial mapping、reuse、broadcast、dataflow planning

三種硬體都在做一件事:讓計算單元持續拿到需要的資料。它們提供的平行單位、記憶體階層和程式介面不同,所以 compiler 的 IR 與最佳化策略也不同,這也是我目前理解 AI compiler 有趣的地方。

鐵人賽結束了,研究還沒有

這裡分享一下為什麼第一篇標題會是「開始與終結的序章」,這是來自一部我很喜歡的動畫 2011 年命運石之門第一集的標題,最後一集標題是「終結與開始的序言」,如果有看過進擊的巨人會知道第一集是「致兩千年後的你」,最後一集「來自兩千年前的你」,我很喜歡這種前後貫穿劇情,變成一個時間循環的哲學探索,很值得慢慢回味。

我很喜歡這部作品,因為它讓我了解到接受無法改變的過去、珍惜當下的每一個選擇,並在絕望中堅持守護重要的人。最近也開始面臨人生的一些抉擇,致十年後的我,到底追求甚麼樣的目標呢?
我想要學習以始為終,還有以終為始的精神。

謝謝大家看到這裡

謝謝一路看到今天的你們。

如果這個系列有讓你對 AI compiler 有興趣那真的是太棒了!

對我自己來說,這次鐵人賽替過去碩一留下一個段落,也替碩二寫下新的開頭。
進入碩二後,我希望自己能繼續維持這次寫文章建立的習慣,希望未來回頭看這個系列時,除了記得碩一做過哪些事,也能看見自己怎麼一步一步學會提出更好的問題。

鐵人賽完賽不代表旅程結束,而是旅程的開始,繼續朝 AI compiler 工程師的路上前進。

最後送給大家我很喜歡一句話:

每個人都有自己的時區。

有人很早找到研究方向,有人繞了一段路才遇到想做的題目;有人正在收穫成果,也有人剛學習新的領域。每段經歷都有自己的速度,不需要拿別人的進度表衡量自己。
期望碩二可以一切順利,也祝大家未來一切順利。無論我們正在研究或學習一個還很陌生的領域,只要願意繼續累積、繼續嘗試,就仍然走在自己的路上。
我們都在自己的時區裡,繼續成長、繼續前進,成為更好的自己!

參考資料


上一篇
Day30:複習 Tenstorrent、TT-Metal、TT-MLIR、Triton Flow、TileLoom
系列文
在 AI Compiler 工程師的路上32
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言