modular/mojo-gpu-puzzles
Learn GPU Programming in Mojo🔥 by Solving Puzzles
Mojo 🔥 GPU 拼圖 – 是什麼
Mojo GPU Puzzles 是一個開源、互動式的學習工具包,教你如何在 Mojo 中撰寫 GPU 程式碼。Mojo 是 Modular 的系統級語言,融合了 Python 風格的語法與編譯程式碼的效能。此程式庫包含一系列自包含的拼圖(問題檔案)及其解答,以及用於在真實 GPU 上建構、執行與測試程式碼的工具。
為何重要
- Mojo 被定位為下一代 AI 硬體程式設計語言 – 提供零成本抽象、強大的靜態類型系統與內建張量原語,同時仍像 Python 一樣使用。
- 直接編寫 GPU 程式碼是高效率 AI 工作負載(模型訓練、推論、自訂核心)的核心技能。這些拼圖提供實務經驗,無需教科書的負擔。
- 此專案附帶 CI 流水線、沙箱工具與基於
pixi的開發環境,使其成為真實、可執行的程式碼庫,而非靜態教學。
如何開始
- 先決條件 – 支援 CUDA 的 NVIDIA GPU(驅動程式 ≥ 580 / CUDA 13.0)。
- 克隆 stable 分支(與線上網頁版本一致)或 main(若計畫貢獻)。
git clone --branch stable https://github.com/modular/mojo-gpu-puzzles cd mojo-gpu-puzzles - 安裝推薦的套件管理員 pixi(管理 Modular 的 MAX/Mojo 套件與 GPU 依賴)。
curl -fsSL https://pixi.sh/install.sh | sh - 本地建構並檢視拼圖書:
pixi run book # 在 http://localhost:3000 啟動 mdBook 伺服器 - 編輯
problems/pXX/下的對應檔案來解拼圖。骨架中包含# FILL ME IN占位符;你只需加入程式碼。 - 在 GPU 上測試你的解答:
可選的沙箱工具(pixi run tests p05 # 執行第 5 個拼圖的 GPU 加速測試memcheck、racecheck等)可用於除錯核心錯誤。
開發與貢獻
- 此程式庫使用 pixi 執行所有開發指令(建構書籍、格式化、執行測試、呼叫 NVIDIA 的
compute-sanitizer)。 - CI 檢查確保問題骨架與解答保持同步,且每個未填的拼圖仍能編譯。
- 歡迎貢獻:改善說明、修復錯誤或新增拼圖。遵循常見的 fork-branch-PR 流程,並查看問題範本以提交錯誤報告或功能請求。
社群與支援
- Discord:
discord.gg/modular– 與其他學習者及 Modular 團隊即時聊天。 - Modular 論壇: 深入問題的討論串。
- 新聞簡報: 透過 README 中的連結訂閱,當新拼圖版本釋出時接收更新通知。
授權
程式碼以 LLVM 授權 發布,一種寬鬆的開源授權。
總結:Mojo GPU Puzzles 是一個具體、可執行的教育專案,讓開發者在日益重要的 AI 與高效能運算領域中,透過 Mojo 語言獲得實際的 GPU 程式設計經驗。
相關
- Dispatch
- Dispatch
- Dispatch
- Dispatch
- 專案