Skip to content

weiwei2027/Learning-CUDA

 
 

Repository files navigation

Learning-CUDA

本项目为 2025 年冬季 InfiniTensor 大模型与人工智能系统训练营 CUDA 方向专业阶段的作业与项目系统。

本页面为 2025 年冬季 InfiniTensor 大模型与人工智能系统训练营 CUDA 方向的项目仓库。

📁 项目结构

learning-CUDA/
├── 03_nf4_dequant
│   └── README.md
├── 04_hadamard_tc
│   └── README.md
├── 05_seq_align
│   └── README.md
├── 06_photon_sim
│   └── README.md
├── 07_trade_planning
│   └── README.md
├── 08_bilateral_filter
│   └── README.md
├── 09_particle_sim
│   └── README.md
├── LICENSE
└── README.md

🧠 项目阶段信息和简介

关于项目阶段

项目阶段相比较于课程阶段的作业会更加 open-ended (开放式题目),不会像作业一样提供测例和标准答案。项目阶段的目标不仅仅是更全面的检验和提升学员对 CUDA 编程的掌握能力,同时还是更全面的检验包括问题分析、方案与系统设计、工具使用和文档能力在内的综合能力。能优秀完成项目阶段的学员能具备工业级的开发能力。因此项目阶段的评审会综合和全面的考察和评判。

项目选题是什么?

项目阶段有多个选题,每个选题的方向和内容可能不尽相同,学员可以根据自己的兴趣进行选择。每位学员需至少选择一个选题且欢迎有兴趣和能力的同学同时完成多个选题。如果学员对选题有自己的想法,也欢迎与导师讨论。

项目阶段其他重要信息

  • 项目阶段时间:2026.2.10 - 2026.3.16

  • 项目提交方式:大部分选题与专业阶段作业相同,在官网提交 fork 仓库的链接与 commit 链接。具体提交方式各个选题可能有所不同,具体见项目选题要求。

注意事项

  1. 最终提交需整理代码:命名方式统一(不限定具体某种风格,全程序统一即可)、代码格式化(无具体某种格式要求,但可以默认使用默认配置的 clang-format)、无测试代码并且关键函数和代码块进行适当的注释。但与其他项目交叉的情况需遵循其他项目的规范;
  2. 取决于具体选题,大体上是以总体性能为评判标准,因此代码的某些功能在适宜的情况下可以在 CPU 上完成,但必须仍有较为显著的部分在 CUDA 上完成。总体性能需超越 CPU 同级别实现;
  3. 如有需要,可以使用合适的 CUDA 官方库。
  4. 如果选题的提交地址为 Learning-CUDA 仓库,则需要 fork Learning-CUDAproject 分支,并在其下对应的选题文件夹中放置自己的代码,即放置路径为 project 分支下 /<选题>/<你的ID>/。提交方式为 PR。E.g., ID 为 lzm 并且做了 path_finding 的选题,则提交的代码位于 project 分支下 /path_finding/lzm/.

需注意,各个选题的基础难度各不相同,在晋级评定时会有影响。同时,是否完成额外目标或进阶优化也会直接影响评定。

🌳 环境配置

> 英伟达(NVIDIA)

  • 如果你使用的是训练营所提供的服务器,遵照英伟达算力文档中的步骤配置好环境即可。

  • 如果为本地或其他环境,请确保系统已安装以下工具:

    1. CUDA Toolkit(版本11.0及以上):
    2. GNU Make
      • 验证安装:运行 make --version(大多数 Linux/macOS 已预装)。
    3. C++ 版本
      • 本次作业在英伟达上默认需支持 C++17

> 天数智芯(Iluvatar CoreX)

  • 如果你使用的是训练营所提供的服务器,遵照天数 BI-100 算力文档中的步骤配置好环境即可。

  • 对于非训练营所提供的天数算力,请配置标准的天数 GPU 开放环境。本次作业在天数上默认需支持 C++17,且本次作业的配置不保证能在所有其他天数环境上无修改直接运行

> 沐曦集成电路(MetaX)

  • 如果你使用的是训练营所提供的服务器,遵照沐曦 (C500) 算力文档中的步骤配置好环境即可。

    • 镜像可以选择 PyTorch 的最新镜像,即 PyTorch 2.8.0, Python 3.1.2,maca 3.3.0.4
  • 对于非训练营所提供的沐曦算力,请配置标准的沐曦 GPU 开放环境。本次作业在沐曦上默认需支持 C++17,且本次作业的配置不保证能在所有其他沐曦环境上无修改直接运行

> 摩尔线程(Moore Threads)

  • 如果你使用的是训练营所提供的服务器,请先遵照摩尔 (S5000) 算力文档中的步骤配置环境。

    在此基础上,请确保在 .bashrc 中添加了以下环境变量:

    export MUSA_ROOT=/usr/local/musa
    export PATH="$MUSA_ROOT/bin:$PATH"
    export LD_LIBRARY_PATH="$MUSA_ROOT/lib:$LD_LIBRARY_PATH"
    export CPLUS_INCLUDE_PATH=/usr/include/c++/11:/usr/include/x86_64-linux-gnu/c++/11
  • 对于非训练营所提供的摩尔算力,请配置标准的摩尔 GPU 开放环境。本次作业在摩尔上默认需支持 C++11,且本次作业的配置不保证能在所有其他摩尔环境上无修改直接运行

📬 有疑问?

如有任何疑问或不确定的地方,欢迎随时询问导师或助教!

Good luck and happy coding! 🚀

About

InfiniTensor 大模型与人工智能系统训练营 CUDA 方向作业与项目系统

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors