GPUKernelContest/docs/Tilelang/Task.md

74 lines
5.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# mcTileLang 算子任务文档(按 Level 分级)
## 一、前置说明
1. 文档参考:所有任务需遵循 mcTileLang 现有文档格式(可参考 `docs/deeplearning_operators` 下的 `matmul.md`、`elementwise.md`)。
2. 提交要求:所有交付物需提交至 mcTileLang 仓库Gitee 地址https://gitee.com/metax-maca/mcTileLang PR 需标注“Level X 任务提交”Issue 需关联对应任务模块。
## 二、Level 1基础验证类5分验证文档上限划10分每个文档只有首次验证得分
### 核心目标
熟悉 mc_tilelang 基础功能,验证现有文档的可复现性。
### 任务内容(二选一即可)
**注:每个文档仅限首次验证得分,重复验证同一文档不计分**
1. **算子文档验证**
- 选择 1 个已完成的算子文档(`matmul.md`/`elementwise.md`/`deepseek_mla.md`/`gemv.md`),按文档中的“使用示例”编写代码,确保能成功运行。
- 记录运行过程中的关键日志(如算子执行时间、输出结果),截图证明代码可复现,将截图提交至对应算子文档的 Gitee Issue需注明“Level 1 验证”)。
2. **教程文档验证**
- 选择 1 个已完成的教程文档(`auto_tuning.md`/`debug_tools_for_tilelang.md`),按教程步骤操作(如 Auto-Tuning 参数配置、Debug 工具调用)。
- 记录操作中发现的问题(如缺失的依赖包、步骤描述模糊点),补充完整操作流程后,将“验证结果+补充建议+操作截图”提交至教程文档的 Gitee Issue。
## 三、Level 2迁移优化类10分
### 核心目标
完成 CUDA 相关文档向 MACA 适配,实现补充算子说明文档。
### 任务内容(二选一或任选组合即可)
1. **文档迁移CUDA 内容适配 MACA**
- 选择 1 个已完成的算子文档(如 `matmul.md`/`elementwise.md`),若文档中包含 CUDA 相关描述(如 CUDA 核函数、线程块配置),将其迁移为 MACA 编程对应的逻辑。
- 迁移要求:明确 CUDA 语法与 MACA 语法的映射关系,补充 MACA 版本后提交迁移后的文档 PR 至 `docs/deeplearning_operators`
2. **教程迁移MACA环境迁移**
- 选择在CUDA环境上进行解释和说明的文档将其在MACA环境下进行同样的操作并将需要补充和说明的内容提交PR到对应的文档`Installation.md`)。
## 四、Level 3文档开发类20分
### 核心目标
编写未完成的算子文档,补充已有文档的 MACA 深度解析。
### 任务内容(二选一,需独立完成核心模块)
1. **未完成文档编写**
- 如从 5 个未编写的算子中选择 1个`convolution.md`/`flash_attention.md`/`flash_linear_attention.md`/`matmul_dequant.md`/`tmac_gpu.md`),按与其他已有的算子文档结构编写文档:
- 算子功能:说明算子的应用场景(如卷积算子用于图像特征提取)、核心计算逻辑;
- 接口参数:列出输入(如输入张量形状、数据类型)、输出(如输出张量维度)、可选参数(如卷积核大小、步长);
- 使用示例:编写 mc_tilelang 调用代码(需基于 MACA 环境),包含数据构造、算子调用、结果验证;
- 性能说明:标注算子在指定设备(如 GPU 型号)下的推荐参数配置。
- 交付物:编写完成的算子文档,提交 PR 至 `docs/deeplearning_operators`
2. **已有文档 MACA 解析补充**
- 选择 1 个已完成的算子文档(如 `matmul.md`新增“MACA 编程解析”章节:
- 解析内容:包含算子的 MACA 内存布局设计(如张量的 `layout` 参数配置)、计算流程优化(如循环展开、数据分块);
- 代码示例:提供完整的 MACA 优化版算子代码(需包含注释),对比优化前后的性能差异。
- 交付物:补充后的文档 PR需附代码运行截图证明优化效果。
## 五、Level 4复杂开发类50分
### 核心目标
开发复杂融合算子或贡献示例代码,满足大模型推理等高阶需求。
### 任务内容
**example 文件夹代码贡献**
-`mcTileLang/examples` 文件夹新增其他算子的完整使用案例。
- 案例要求:包含数据准备、算子调用、结果可视化(如打印特征图形状、注意力权重热力图)、性能分析代码,提交代码 PR 并附运行演示截图。
## 六、验证得分规则
- **Level 1 验证文档上限**10分每个文档首次验证得5分后续重复验证不计分
- **验证范围**:算子文档验证和教程文档验证均适用此规则
- **计分方式**:系统会自动识别文档验证记录,同一文档多次提交仅计算首次验证得分
## 七、交付物清单(按 Level 汇总)
| Level | 必交交付物 | 可选交付物 |
|-------|------------|------------|
| 1 | 验证截图、Issue 提交记录 | 补充的操作步骤文档 |
| 2 | 迁移后的文档 PR、验证截图 | 详细说明文档 |
| 3 | 未完成算子文档 PR / 补充 MACA 解析的文档 PR | 解析逻辑说明文档 |
| 4 | example 代码 PR | 结果输出和验证的图片 |