GPUKernelContest/spring_tilelang/docs/writing-guide.md

3.9 KiB
Raw Permalink Blame History

学习文档撰写说明

本文档指导你如何撰写 TileLang 学习文档。


写作形式

你可以根据自己的学习风格选择以下任一形式:

形式一:每个 Puzzle 一篇笔记

为每个完成的 Puzzle 撰写单独的笔记,记录:

  • Puzzle 的核心知识点
  • 解题思路和关键代码
  • 遇到的问题及解决方法

适合人群: 喜欢详细记录、循序渐进的学习者

形式二:整体学习心得

完成所有练习后,撰写一篇综合性的学习总结:

  • TileLang 整体学习感悟
  • 核心概念的理解
  • 从入门到进阶的心路历程

适合人群: 喜欢宏观思考、总结提炼的学习者

形式三:混合形式

结合以上两种形式:

  • 简单 Puzzle 合并记录
  • 复杂 Puzzle 单独深入分析
  • 最后附整体学习感悟

适合人群: 灵活多变、按需记录的学习者


内容建议

基础内容

无论你选择哪种形式,建议包含以下内容:

  1. 学习背景

    • 为什么学习 TileLang
    • 学习目标
  2. 核心概念理解

    • Tile 的概念和作用
    • Kernel 的编写方式
    • Schedule 的调度策略
  3. 实践记录

    • 完成的 Puzzle 列表
    • 关键代码片段
    • 运行结果截图
  4. 问题与解决

    • 遇到的困难
    • 解决过程
    • 经验总结

进阶内容(可选)

  • 性能分析:对比不同实现的性能差异
  • 源码阅读:阅读 TileLang 源码的心得
  • 拓展思考TileLang 与其他框架的对比

文档格式

文件命名

建议使用英文小写,单词间用 - 连接:

puzzle-01-notes.md          # 单个 Puzzle 笔记
tilelang-learning-journey.md # 整体学习心得
my-tilelang-notes.md        # 个人笔记

文档结构示例

单个 Puzzle 笔记示例

# Puzzle 01 - Copy 学习笔记

## 学习目标
理解 TileLang 中最基本的张量拷贝操作。

## 核心概念

### Tile 的概念
Tile 是 TileLang 中数据管理的基本单位...

### Copy 操作的实现
```python
# 关键代码

解题过程

第一次尝试

...

遇到的问题

...

最终方案

...

总结

通过本 Puzzle我理解了...


#### 整体学习心得示例

```markdown
# TileLang 春节学习心得

## 学习背景
春节期间参加了 TileLang 算力入门挑战...

## 学习历程

### 第一阶段:环境搭建
...

### 第二阶段:基础 Puzzle
...

### 第三阶段:进阶挑战
...

## 核心收获

### 对 TileLang 的理解
TileLang 是一个... 它的核心优势在于...

### 对 GPU 编程的新认识
...

## 踩坑记录

### 坑一:...
解决方案:...

### 坑二:...
解决方案:...

## 未来计划
- 深入研究...
- 尝试优化...

## 结语
这个春节没有摆烂,收获满满!

提交要求

将学习文档提交到 spring_tilelang/submissions/YOUR_ID/ 目录:

spring_tilelang/
└── submissions/
    └── YOUR_ID/
        ├── notes/             # 学习文档目录
        │   ├── puzzle-01.md
        │   ├── puzzle-02.md
        │   └── summary.md
        └── ...

写作建议

真实记录

  • 记录真实的思考过程,不要只写正确答案
  • 失败的尝试同样有价值
  • 报错信息和解决方法可以帮助他人

图文并茂

  • 适当插入代码片段
  • 添加运行截图
  • 可以画图解释概念

保持个性

  • 用自己的语言表达
  • 可以加入个人感悟
  • 风格不限,真诚即可

注重实用

  • 提供可运行的代码
  • 给出具体的命令
  • 分享实用的调试技巧

参考示例

以下是一些优秀的技术博客参考:


最后

写作是最好的学习方式。通过整理和输出,你会对 TileLang 有更深入的理解。

祝你写作愉快,学习进步!