Are you sure you want to delete this task? Once this task is deleted, it cannot be recovered.
|
|
2 months ago | |
|---|---|---|
| .gitee/ISSUE_TEMPLATE | 2 months ago | |
| S1/ICTN0N | 2 months ago | |
| cp_template | 2 months ago | |
| .gitignore | 2 months ago | |
| LICENSE | 3 months ago | |
| README.md | 2 months ago | |
| cp_run_guide.md | 2 months ago | |
| how-to-contribute.md | 3 months ago | |
欢迎参加 GPU 算子优化挑战赛 🎯!
本比赛旨在通过优化深度学习框架中的核心计算模块,提升大模型的运行效率。在本仓库中,你可以提交你的优化代码、测试样例和使用说明。
随着大语言模型(LLM, 如 ChatGPT 等)的广泛使用,其在运行推理时对计算资源的要求越来越高,出现了所谓的 “三高” 问题:
本次挑战赛正是为了解决这些问题,鼓励选手优化 GPU 上的底层算子(即最基础的数学运算模块),提高模型推理效率。
本次挑战主要有两个技术方向:
👉 项目目标:在不更换硬件的前提下,让推理速度提升 30%!
本竞赛旨在评估参赛者在GPU并行计算领域的算法优化能力。为了快速让参赛者进入比赛状态,我们提供了三个核心算法的高性能版本参考,供参赛选手不断优化性能:
cp_template到赛题ICTN0N目录
├── S1(说明:第一季比赛名)
│ ├── ICTN0N(说明:以赛题ID命名目录存放赛题的PR)
| | ├── utils
│ | ├── run.sh(说明:作为CI自动测试验证的入口)
| | └── ……
│ └── ……
└── S2(说明:第二季比赛名)
└── 赛题目录1
└── 赛题目录2
选手赛题目录内提供了编译、测试的脚本,供选手熟悉比赛环境,步骤如下:
# !!!注意参赛选手需要根据自己的赛题ID进入自己初始化的目录!!!!
cd GPUKernelContest/S1/ICTN0N
# 编译并运行所有算法测试(默认行为)
./run.sh
# 编译并运行单个算法测试
./run.sh --run_reduce # ReduceSum算法
./run.sh --run_sort # SortPair算法
./run.sh --run_topk # TopkPair算法
# 仅编译所有算法,不运行测试
./run.sh --build-only
# 单个运行不同算法的测试
./build/test_reducesum [correctness|performance|all]
./build/test_sortpair [correctness|performance|all]
./build/test_topkpair [correctness|performance|all]
对于如何提交可参考:如何贡献
每次合并的提交会按以下规则评分:
| 等级 | 内容描述 | 分值 |
|---|---|---|
| Level 1 | 优化一个 PyTorch / Paddle 算子 | 5 分 |
| Level 2 | 融合优化 2~9 个算子 | 10 分 |
| Level 3 | 含 MMA(多维矩阵乘)融合算子 | 50 分 |
| Level 4 | 用于大模型推理的复杂融合算子 | 50 分 |
| 合并至MACA开源项目仓库的每个PR<需要在赛题提供对应合并的记录,并确保和参赛使用的邮箱一致的提交邮箱> | - | 50 分 |
| 内容 | 分值 |
|---|---|
| 代码规范、清晰 | +10 分 |
| 性能优化明显 | +10 分 |
| 记录优化过程、说明模型来源 | +20 分 |
| 使用 LLM Prompt 自动生成代码及样例 | +20 分 |
注意: 加分项只针对于在基础得分相同的情况下通过加分项来区分不同的排名和后续优秀选手的参考。
你可以参考以下项目仓库,了解算子开发与提交格式:
如需帮助或有疑问,请联系主办方或在项目中发起 Issue。
祝你挑战顺利,优化出更快的大模型推理体验!🚀
No Description
C++ Shell Markdown