Browse Source

Merge pull request #2 from cuckooaa/cuckooaa-patch-1

Update README.md
pull/1/head
Kevin Zhang GitHub 3 months ago
parent
commit
f5044261a7
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
1 changed files with 115 additions and 0 deletions
  1. +115
    -0
      README.md

+ 115
- 0
README.md View File

@@ -1 +1,116 @@
# GPUKernelContest
# GPU 算子优化挑战赛

欢迎参加 **GPU 算子优化挑战赛** 🎯!
本比赛旨在通过优化深度学习框架中的核心计算模块,提升大模型的运行效率。在本仓库中,你可以提交你的优化代码、测试样例和使用说明。

---

## 🧠 比赛背景简介

随着大语言模型(LLM, 如 ChatGPT 等)的广泛使用,其在运行推理时对计算资源的要求越来越高,出现了所谓的 “三高” 问题:

- **高延迟**:响应慢
- **高显存占用**:消耗大量显存
- **高生态依赖**:对系统和软件依赖复杂

本次挑战赛正是为了解决这些问题,鼓励选手**优化 GPU 上的底层算子(即最基础的数学运算模块)**,提高模型推理效率。

---

## 🔧 挑战方向

本次挑战主要有两个技术方向:

### 1. Test Time Scaling 算子优化
- 对深度学习框架中的基础算子(如 PyTorch 或 PaddlePaddle 中的矩阵乘法)进行性能优化。

### 2. Gemm 内核极致优化
- **GEMM(General Matrix Multiplication)** 是大模型中的核心计算操作。
- 目标是对其内核(Kernel)进行精细调优,提高执行效率。

👉 **项目目标:在不更换硬件的前提下,让推理速度提升 30%!**

---

## 📥 如何参与提交?

### ✅ 参赛要求:
- 提交内容必须可以在沐曦自研 GPU **曦云 C500** 上运行。
- 所提交的优化代码将由主办方审核,**需成功合并(Merge)到官方 Gitee 仓库,才算有效提交。**

### 📦 提交内容包含:
- 算子优化后的代码
- 可运行的测试用例
- 使用说明文档

---

## 📈 评分机制

每次提交会按以下规则评分:

### 🎯 基础得分(Level):
| 等级 | 内容描述 | 分值 |
|------|----------|------|
| Level 1 | 优化一个 PyTorch / Paddle 算子 | 5 分 |
| Level 2 | 融合优化 2~9 个算子 | 10 分 |
| Level 3 | 含 MMA(多维矩阵乘)融合算子 | 50 分 |
| Level 4 | 用于大模型推理的复杂融合算子 | 50 分 |
| 合并至沐曦正式项目仓库 | - | 50 分 |

### ✨ 加分项:
| 内容 | 分值 |
|------|------|
| 代码规范、清晰 | +10 分 |
| 性能优化明显 | +10 分 |
| 记录优化过程、说明模型来源 | +20 分 |
| 使用 LLM Prompt 自动生成代码及样例 | +20 分 |

---

## 🏅 排名规则

- 比赛周期:2 个月
- 排名按累计得分排序,取前 12 名!

若得分相同:
1. 提交次数多者优先
2. 提交时间早者优先

---

## 📚 官方参考项目仓库

你可以参考以下项目仓库,了解算子开发与提交格式:

- [FlashMLA](https://github.com/MetaX-MACA/FlashMLA)
- [mcTVM](https://github.com/MetaX-MACA/mcTVM)
- [mcEigen](https://github.com/MetaX-MACA/mcEigen)
- [mcPytorch](https://github.com/MetaX-MACA/mcPytorch)

---

## 🖥️ 可用资源

- 沐曦曦云 **C500 GPU 单卡**(支持图形显示 + 性能评估)

---

## 💡 术语解释

- **算子(Operator)**:指深度学习框架中的基本计算模块,例如矩阵乘法、卷积等。
- **GEMM**:全称 General Matrix Multiplication,一种用于矩阵计算的核心算法,是大模型中的基础运算。
- **MMA**:Matrix Multiply-Accumulate,多维矩阵乘加运算,适用于复杂计算加速。
- **LLM**:Large Language Model,大语言模型,如 GPT、BERT 等。
- **推理(Inference)**:模型训练完成后,用来“预测”或“使用”的过程。
- **Prompt**:用于引导大模型生成特定内容的输入提示词。
- **PR(Pull Request)**:在 Git 仓库中提交你的修改请求,供维护者审查后合并。

---

## 📬 联系与帮助

如需帮助或有疑问,请联系主办方或在项目中发起 Issue。

祝你挑战顺利,优化出更快的大模型推理体验!🚀

Loading…
Cancel
Save