[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"site-home-live-entry-setting":3,"site-header-contests":8,"site-header-camps":49,"study-material-detail-study-30":104},{"enabled":4,"title":5,"statusText":5,"buttonText":5,"campSlug":5,"stage":6,"classroomId":7,"hasClassroom":4},false,"",0,null,{"total":9,"list":10,"pageNum":44,"pageSize":45,"size":9,"startRow":44,"endRow":9,"pages":44,"prePage":6,"nextPage":6,"isFirstPage":46,"isLastPage":46,"hasPreviousPage":4,"hasNextPage":4,"navigatePages":47,"navigatepageNums":48,"navigateFirstPage":44,"navigateLastPage":44},3,[11,25,35],{"slug":12,"title":13,"logo":7,"liveUrl":14,"prize":15,"sponsor":16,"description":17,"organizer":18,"startTime":19,"endTime":20,"registrationDeadline":21,"status":22,"dashboardVisibility":23,"createdAt":24},"spring2026","2026春季启元人工智能大赛","https:\u002F\u002Fwww.bilibili.com\u002Fblackboard\u002Flive\u002Flive-activity-player.html?cid=1822703816&quality=0","200,000","麒麟软件有限公司","“2026春季启元人工智能大赛”是由启元实验室主办的面向全国人工智能领域开发者、科研人员及高校学生的权威赛事。大赛旨在促进与培养具备工程实践能力和创新能力的优秀人工智能领域开发者、推广国产软硬件技术与生态、助力国家人工智能产业高质量发展。\n各参赛选手需在规定的比赛周期内，依据赛事规则选定赛题并完成相应挑战，优胜者将共同角逐总额20万元的赛事奖金池，并且还将有机会获得实习和知名企业优质岗位内推资格。","启元实验室","2026-04-19 16:00:00","2026-07-13 16:00:00","2026-06-16 16:00:00","ongoing","private","2026-04-16 08:00:00",{"slug":26,"title":27,"logo":7,"liveUrl":14,"prize":28,"sponsor":7,"description":29,"organizer":18,"startTime":30,"endTime":31,"registrationDeadline":32,"status":33,"dashboardVisibility":23,"createdAt":34},"autumn2025","2025秋季启元人工智能大赛","150,000","“2025秋季启元人工智能大赛”是由启元实验室主办的面向全国人工智能领域开发者、科研人员及高校学生的权威赛事。大赛旨在促进与培养具备工程实践能力和创新能力的优秀人工智能领域开发者、推广国产软硬件技术与生态、助力国家人工智能产业高质量发展。","2025-11-08 08:00:00","2026-01-13 08:00:00","2025-12-30 08:00:00","ended","2025-11-03 08:00:00",{"slug":36,"title":37,"logo":7,"liveUrl":14,"prize":38,"sponsor":7,"description":39,"organizer":18,"startTime":40,"endTime":41,"registrationDeadline":42,"status":33,"dashboardVisibility":23,"createdAt":43},"summer2025","启元人工智能大赛(系统方向)","80,000","启元人工智能大赛由启元实验室主办，其中系统赛道基于启元实验室九源软件栈的相关开源项目，通过拉动开源社区力量，一方面促进国产智能计算生态的发展，另一方面也为人工智能系统方向的学生及从业者提供一个实践平台。","2025-07-08 08:00:00","2025-08-25 08:00:00","2025-07-22 08:00:00","2025-06-22 08:00:00",1,5,true,8,[44],{"total":45,"list":50,"pageNum":44,"pageSize":45,"size":45,"startRow":44,"endRow":45,"pages":44,"prePage":6,"nextPage":6,"isFirstPage":46,"isLastPage":46,"hasPreviousPage":4,"hasNextPage":4,"navigatePages":47,"navigatepageNums":103,"navigateFirstPage":44,"navigateLastPage":44},[51,62,73,84,94],{"id":52,"slug":53,"title":54,"logo":55,"publicLiveEmbedUrl":14,"description":56,"introduction":57,"organizer":18,"coOrganizer":5,"sponsor":16,"startTime":58,"endTime":59,"status":22,"dashboardVisibility":60,"createdAt":58,"updatedAt":61},"019eeeff-6b00-7d55-a629-efafded3e232","summer2026","2026年夏季InfiniTensor大模型与人工智能系统训练营","https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fuploads\u002F2026-06\u002F019eef7f-7816-7828-9309-79c2c61dd568.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=ihPLIAuCbx%2FbInTQLbtnjbL%2FgEc%3D","由启元实验室发起的InfiniTensor大模型与人工智能系统训练营，面向开源社区、高校及产业界伙伴开放。活动以「普及AI全栈知识技术、培养工程实践与创新型人才、推广国产软硬件技术生态」为核心目标，助力国家人工智能产业高质量发展。","...","2026-06-22 08:00:00","2026-10-19 08:00:00","public","2026-10-12 08:00:00",{"id":63,"slug":64,"title":65,"logo":66,"publicLiveEmbedUrl":7,"description":67,"introduction":57,"organizer":18,"coOrganizer":5,"sponsor":68,"startTime":69,"endTime":70,"status":33,"dashboardVisibility":23,"createdAt":71,"updatedAt":72},"019af3f3-e06a-7245-aa8d-37dc99a69c73","winter2025","2025年冬季InfiniTensor大模型与人工智能系统训练营","https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fuploads\u002F2025-12\u002F019afc69-b7ca-7805-91fb-605429671c01.png?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=RFJPol03COkEgvG5I%2FXurn1xrVs%3D","由启元实验室发起的InfiniTensor大模型与人工智能系统训练营，面向开源社区、高校及产业界伙伴开放。活动以「普及AI全栈知识技术、培养工程实践与创新型人才、推广国产软硬件技术生态」为核心目标，助力国家人工智能产业高质量发展。 \n","新华三技术有限公司","2025-12-25 08:00:00","2026-03-27 08:00:00","2025-12-06 08:00:00","2026-10-22 20:24:30",{"id":74,"slug":36,"title":75,"logo":76,"publicLiveEmbedUrl":7,"description":77,"introduction":57,"organizer":18,"coOrganizer":5,"sponsor":78,"startTime":79,"endTime":80,"status":81,"dashboardVisibility":23,"createdAt":82,"updatedAt":83},"01980342-208c-7803-b3f3-19e1d31960ba","2025年夏季InfiniTensor大模型与人工智能系统训练营","https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fuploads\u002F2025-07\u002F0198045e-28fe-78f0-95fe-23835ce58395.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=3EgCBk5kjXXxH6wOy5O8vDSNjzc%3D","InfiniTensor大模型与人工智能系统训练营由启元实验室及清华大学 AI 系统方向团队发起，面向开源社区、高校和产业界，普及人工智能各方面知识和技术，培养相关人才。训练营联合开源项目开发者、学术界大牛、工业界资深工程师参与授课与项目指导。课程采用「线上直播授课 + 在线答疑 + 项目实践辅导 」的方式进行，确保每位同学都能获得充分成长。训练营全程免费，通过视频、直播课、习题和项目实践，在人工智能飞速发展的背景下，为学员提供一窥深层技术的机会。","北京积算科技有限公司","2025-07-14 08:00:00","2025-09-30 08:00:00","upcoming","2025-07-13 08:00:00","2026-10-22 20:24:58",{"id":85,"slug":86,"title":87,"logo":88,"publicLiveEmbedUrl":7,"description":89,"introduction":57,"organizer":18,"coOrganizer":5,"sponsor":5,"startTime":90,"endTime":91,"status":81,"dashboardVisibility":23,"createdAt":92,"updatedAt":93},"01980cf9-a7d8-7796-ae86-0bbe05334add","winter2024","2024年冬季InfiniTensor大模型与人工智能系统训练营","https:\u002F\u002Ftesting-cdn.infinitensor.com\u002Fuploads\u002F2025-07\u002F01981269-ce23-7624-a287-9f07dd0d85f6.jpg","InfiniTensor大模型与人工智能系统训练营由清华大学发起，面向开源社区、高校和产业界，普及人工智能各方面知识和技术，培养相关人才。训练营全程免费，通过视频、直播课、习题和项目实践，在人工智能飞速发展的背景下，为学员提供一窥深层技术的机会。报名学员请阅读“导学”课程页的训练营介绍。","2025-01-05 08:00:00","2025-03-22 08:00:00","2025-07-15 08:00:00","2026-10-22 20:24:39",{"id":95,"slug":96,"title":97,"logo":98,"publicLiveEmbedUrl":7,"description":99,"introduction":57,"organizer":18,"coOrganizer":5,"sponsor":5,"startTime":100,"endTime":101,"status":81,"dashboardVisibility":23,"createdAt":92,"updatedAt":102},"01980c20-363a-7dc3-8f5a-58a68e08dcc4","summer2024","2024年夏季InfiniTensor大模型与人工智能系统训练营","https:\u002F\u002Ftesting-cdn.infinitensor.com\u002Fuploads\u002F2025-07\u002F01981269-fbfa-788a-afcd-17fa9be74ff9.jpg","InfiniTensor大模型与人工智能系统训练营由清华大学发起，面向开源社区和高校，普及人工智能各方面知识和技术，培养相关人才。训练营全程免费，通过课程、习题和项目实践，在人工智能飞速发展的背景下，为学员提供一窥深层技术的机会。","2024-07-20 08:00:00","2024-09-29 08:00:00","2026-10-22 20:24:49",[44],{"currentItem":105,"processedData":125},{"img":106,"keywords":107,"treeType":44,"description":108,"showStatus":44,"updateTime":109,"type":110,"title":111,"content":112,"nextArticle":113,"createTime":109,"sortOrder":117,"canonicalPath":118,"id":119,"contentType":120,"prevArticle":121},"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_30_fm.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=S0gmhBT1SYI7kOQaCf5BCvG2kqE%3D","InfiniTensor,冬季训练营,CUDA迁移,天数智芯GPU,性能验证","介绍 CUDA 程序迁移至天数智芯 GPU 的关键流程，覆盖适配要点与性能验证方法。","2026-10-22 20:38:11",2,"InfiniTensor 冬季训练营 CUDA 编程第四课《CUDA 程序迁移至天数智芯 GPU》","![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_30_zw01.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=xi57gPWnOuaqb%2B8TV%2BzFjMp733M%3D)\r\n\r\n\r\n2026 年 1 月 22 日，2025 冬季 InfiniTensor 大模型与人工智能系统训练营 CUDA 编程系列第四课《CUDA 程序迁移至天数智芯 GPU》开讲。\r\n\r\n本节课主讲从 CUDA 到国产 GPU，如何高效迁移现有代码，详解天数智芯 GPU 的迁移策略与性能优化方法。前置课程为《[内存模型与规约优化](https:\u002F\u002Fmp.weixin.qq.com\u002Fs\u002Ff3f3CE18l1iJ51NZbWE2kg)》，感兴趣的同学可以先行复习。\r\n\r\n## 天数智芯GPU架构特性\r\n\r\n随着国产 GPU 技术的快速发展，越来越多的 AI 和高性能计算应用开始考虑从 NVIDIA GPU 向国产 GPU 平台迁移。天数智芯作为国内领先的 GPU 厂商，其产品在架构设计上与CUDA生态保持高度兼容，为现有 CUDA 程序的迁移提供了便利条件。\r\n\r\n然而，**完全兼容不等于直接替换**。由于硬件架构的差异，简单的重新编译往往无法获得理想的性能表现。\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_30_zw02.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=8Y7JUqGUX27qp3uIvLZviJU8ma8%3D)\r\n\r\n\r\n### 核心架构差异\r\n天数智芯 GPU 虽然在编程模型上与 CUDA 兼容，但在硬件细节上存在重要差异：\r\n\r\n#### 1. Warp 大小不同\r\n- **NVIDIA GPU**：Warp 大小为32个线程\r\n- **天数智芯 GPU**：Warp 大小为64个线程\r\n\r\n**影响**：原有的 block 大小设置可能导致\"尾巴效应\"，即最后一个 warp 中部分线程处于空闲状态，造成资源浪费。\r\n\r\n#### 2. Block 线程限制\r\n- **NVIDIA GPU**：单个 block 最多1024个线程\r\n- **天数智芯GPU**：单个 block 最多4096个线程\r\n\r\n**优势**：更大的 block 线程数提供了更高的调度灵活性，有利于提高资源利用率。\r\n\r\n#### 3. 共享内存配置\r\n- **典型配置**：每个计算单元（CU）配备 128KB 共享内存\r\n- **调度影响**：block 使用的共享内存大小直接影响可并行调度的 block 数量\r\n\r\n### 编程模型兼容性\r\n天数智芯 GPU 实现了 CUDA 常用 API 的完整兼容：\r\n- 主机端 API（如 cudaMalloc、cudaMemcpy 等）\r\n- 设备端内置函数（数学函数、原子操作等）\r\n- 编程语法（`__global__`、`__device__`等关键字）\r\n\r\n> **关键结论**：标准的CUDA程序通常无需修改源代码即可在天数智芯GPU上运行。\r\n\r\n## CUDA 程序迁移过程\r\n\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_30_zw03.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=XAc449qqpRV%2BsbzpNAhgFS8e3OU%3D)\r\n\r\n\r\n### 需要修改的代码类型\r\n\r\n#### 1. PTX 汇编代码\r\n- **问题**：PTX 是 NVIDIA 特有的中间汇编语言\r\n- **解决方案**：重写为标准 CUDA C++ 代码\r\n- **建议**：尽量避免使用汇编代码，优先使用高级语言实现\r\n\r\n#### 2. 非标准 CUDA 扩展\r\n- **问题**：某些 NVIDIA 特有的 API 或编译器扩展\r\n- **检查方法**：编译时查看未定义符号错误\r\n- **解决方案**：使用天数智芯提供的等效 API 替代\r\n\r\n#### 3. 硬件相关假设\r\n- **问题**：代码中硬编码了 NVIDIA GPU 的硬件参数\r\n- **示例**：假设 warp 大小为 32，或 block 最大线程数为 1024\r\n- **解决方案**：使用运行时查询或宏定义来适配不同硬件\r\n\r\n### 编译错误排查\r\n常见的编译错误主要来源于：\r\n- **非标准C++代码**：不同编译器对非标准代码的容错处理不同\r\n- **未初始化内存**：某些编译器自动初始化内存为 0，而其他编译器不会\r\n- **API缺失**：天数智芯 SDK 可能尚未实现某些较新的 CUDA API\r\n\r\n**调试建议**：仔细阅读编译错误信息，逐条修正代码规范性问题。\r\n\r\n## 编译环境配置\r\n\r\n### SDK 安装步骤\r\n1. **依赖准备**：\r\n   - 安装 C\u002FC++ 编译器和标准库\r\n   - 安装 make 工具\r\n   - 安装 Linux 内核头文件\r\n\r\n2. **SDK 安装**：\r\n   - 下载天数智芯 SDK 安装包\r\n   - 按照官方文档执行安装脚本\r\n   - 验证驱动安装（执行`ixsmi`命令）\r\n\r\n3. **环境变量配置**：\r\n   ```bash\r\n   # 添加编译器路径\r\n   export PATH=$PATH:\u002Fpath\u002Fto\u002Ftianshu\u002Fbin\r\n\r\n   # 添加动态库路径\r\n   export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:\u002Fpath\u002Fto\u002Ftianshu\u002Flib64\r\n   ```\r\n\r\n### 编译器选择\r\n- **主机端代码**（纯 CPU 代码）：可使用系统默认编译器\r\n- **设备端代码**（包含核函数）：必须使用天数智芯提供的编译器\r\n- **混合代码**（.cu 文件）：必须使用天数智芯编译器\r\n\r\n## 编译配置详解\r\n\r\n### 基础编译命令\r\n```bash\r\n# 天数智芯编译器\r\ntianshu-c++\r\n\r\n# 必需参数\r\n-fPIC                    # 生成位置无关代码（用于动态库）\r\n--gpu-architecture=iv11  # 指定GPU架构（根据实际型号调整）\r\n--cuda-path=\u002Fpath\u002Fto\u002Fsdk # 指定SDK路径\r\n\r\n# 标准参数\r\n-I\u002Fpath\u002Fto\u002Finclude       # 头文件路径\r\n-L\u002Fpath\u002Fto\u002Flib64         # 库文件路径\r\n-lcuda                   # 链接CUDA运行时库\r\n```\r\n\r\n### Makefile 迁移\r\nMakefile 迁移主要涉及变量定义的修改：\r\n\r\n```makefile\r\n# 原NVIDIA配置\r\nNVCC = nvcc\r\nNVCC_FLAGS = -arch=sm_75 -O3\r\n\r\n# 天数智芯配置\r\nTS_CC = tianshu-c++\r\nTS_FLAGS = --gpu-architecture=iv11 -O3\r\n\r\n# 编译规则\r\n%.o: %.cu\r\n\t$(TS_CC) $(TS_FLAGS) -c $\u003C -o $@\r\n```\r\n\r\n**关键点**：移除 NVIDIA 特有的编译参数，替换为天数智芯对应的参数。\r\n\r\n### CMake 配置\r\n天数智芯提供了增强版 CMake，简化了配置过程：\r\n\r\n#### 1. 安装天数智芯 CMake\r\n```bash\r\n# 安装增强版CMake\r\n.\u002Ftianshu-cmake-installer.sh --prefix=\u002Fopt\u002Ftianshu-cmake\r\n\r\n# 配置环境变量\r\nexport PATH=\u002Fopt\u002Ftianshu-cmake\u002Fbin:$PATH\r\n```\r\n\r\n#### 2. CMakeLists.txt 配置\r\n```cmake\r\ncmake_minimum_required(VERSION 3.18)\r\nproject(MyProject LANGUAGES CXX CUDA)\r\n\r\n# 查找天数智芯CUDA支持\r\nfind_package(CUDA REQUIRED)\r\n\r\n# 包含头文件和库路径\r\ninclude_directories(${TIANSHU_INCLUDE_DIRS})\r\nlink_directories(${TIANSHU_LIBRARY_DIRS})\r\n\r\n# 设置GPU架构\r\nset(CMAKE_CUDA_ARCHITECTURES \"iv11\")\r\n\r\n# 添加可执行文件\r\ncuda_add_executable(myapp main.cu utils.cu)\r\n\r\n# 链接运行时库\r\ntarget_link_libraries(myapp ${TIANSHU_CUDA_LIBRARIES})\r\n```\r\n\r\n## 天数 SDK 中的常用工具\r\n\r\n天数智芯 SDK 提供了一套完整的开发辅助工具，涵盖了从状态监控、性能分析到代码调试的全流程。为了方便 CUDA 开发者快速上手，下表整理了主要工具及其功能，并列出了与 NVIDIA 工具链的对应关系。\r\n\r\n### 1. 系统管理与监控\r\n- **ixSMI (System Management Interface)**\r\n  - **对标工具**：`nvidia-smi`\r\n  - **功能简介**：提供系统管理信息，用于对天数智芯加速卡进行实时监控，包括查看驱动版本、设备温度、功耗及显存使用率等关键指标。\r\n\r\n### 2. 性能分析 (Profiling)\r\n- **ixPROF (Profiler 工具)**\r\n  - **对标工具**：`nvprof` \u002F `nsys` (命令行模式)\r\n  - **功能简介**：用于收集和查看追踪数据 (Trace)，帮助开发者了解加速卡的详细运行状态，从而进行系统级的性能瓶颈分析。\r\n\r\n- **ixSYS (可视化性能分析工具)**\r\n  - **对标工具**：`Nsight Systems`\r\n  - **功能简介**：在 CUDA 应用程序运行时对系统进行采样并抓取 Trace。其核心优势是支持 **Web 图形化展示**，开发者可以通过浏览器直观地查看统计图表和性能流水线。\r\n\r\n### 3. 代码调试\r\n- **ixGDB (代码调试工具)**\r\n  - **对标工具**：`cuda-gdb`\r\n  - **功能简介**：针对天数智芯加速卡的开源调试工具，支持对运行在 GPU 上的 CUDA 应用程序进行断点调试、变量检查和单步执行。\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_30_zw04.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=ZwX1hgLE6pFWC7HwxOzWsa56ad8%3D)\r\n\r\n\r\n\r\n\r\n### 总结\r\nCUDA 程序迁移至天数智芯 GPU 是一个系统工程，需要从兼容性评估、代码适配、编译配置到性能优化的全流程考虑。虽然天数智芯 GPU 在编程模型上保持了良好的 CUDA 兼容性，但要获得最佳性能仍需针对其硬件特性进行专门优化。随着国产 GPU 生态的不断完善，相信未来会有更多优秀的 AI 和高性能计算应用在国产平台上发挥出色性能。\r\n\r\n\r\n\r\n\r\n![2025冬季训练营课程表](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_01_zw6.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=a8H1mmcFuHQlXPwOb9vIkgGHb3g%3D)\r\n\r\n### 💡 学习贴士\r\n更多细节及完整课程内容，请观看直播或查看课程回放。\r\n\r\n链接：https:\u002F\u002Fwww.infinitensor.com\u002Fcamp\u002Fwinter2025\r\n\r\n### 📚 训练营报名持续进行中\r\n扫码报名与加入群聊，或点击 **「阅读原文」** 直达官网报名\r\n\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_01_zw7.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=1gVq94K1yhwDat7%2FIiB1Q44urNk%3D)",{"publishTime":7,"createTime":109,"canonicalPath":114,"id":115,"title":116},"\u002Fstudy-material\u002Fstudy-29","study-29","InfiniTensor 冬季训练营前沿模型第三课《检索增强的语言模型》",79,"\u002Fstudy-material\u002Fstudy-30","study-30","markdown",{"publishTime":7,"createTime":109,"canonicalPath":122,"id":123,"title":124},"\u002Fstudy-material\u002Fstudy-31","study-31","InfiniTensor 冬季训练营 CUDA 编程第四课《分块与不规则访存》",{"htmlContent":126,"headings":127},"\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_30_zw01.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=xi57gPWnOuaqb%2B8TV%2BzFjMp733M%3D\" alt=\"\">\u003C\u002Fp>\n\u003Cp>2026 年 1 月 22 日，2025 冬季 InfiniTensor 大模型与人工智能系统训练营 CUDA 编程系列第四课《CUDA 程序迁移至天数智芯 GPU》开讲。\u003C\u002Fp>\n\u003Cp>本节课主讲从 CUDA 到国产 GPU，如何高效迁移现有代码，详解天数智芯 GPU 的迁移策略与性能优化方法。前置课程为《\u003Ca href=\"https:\u002F\u002Fmp.weixin.qq.com\u002Fs\u002Ff3f3CE18l1iJ51NZbWE2kg\">内存模型与规约优化\u003C\u002Fa>》，感兴趣的同学可以先行复习。\u003C\u002Fp>\n\u003Ch2 id=\"天数智芯gpu架构特性\">\u003Ca class=\"anchor\" href=\"#天数智芯gpu架构特性\" aria-label=\"跳转到标题：天数智芯GPU架构特性\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>天数智芯GPU架构特性\u003C\u002Fh2>\u003Cp>随着国产 GPU 技术的快速发展，越来越多的 AI 和高性能计算应用开始考虑从 NVIDIA GPU 向国产 GPU 平台迁移。天数智芯作为国内领先的 GPU 厂商，其产品在架构设计上与CUDA生态保持高度兼容，为现有 CUDA 程序的迁移提供了便利条件。\u003C\u002Fp>\n\u003Cp>然而，\u003Cstrong>完全兼容不等于直接替换\u003C\u002Fstrong>。由于硬件架构的差异，简单的重新编译往往无法获得理想的性能表现。\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_30_zw02.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=8Y7JUqGUX27qp3uIvLZviJU8ma8%3D\" alt=\"\">\u003C\u002Fp>\n\u003Ch3 id=\"核心架构差异\">\u003Ca class=\"anchor\" href=\"#核心架构差异\" aria-label=\"跳转到标题：核心架构差异\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>核心架构差异\u003C\u002Fh3>\u003Cp>天数智芯 GPU 虽然在编程模型上与 CUDA 兼容，但在硬件细节上存在重要差异：\u003C\u002Fp>\n\u003Ch4 id=\"1-warp-大小不同\">\u003Ca class=\"anchor\" href=\"#1-warp-大小不同\" aria-label=\"跳转到标题：1. Warp 大小不同\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>1. Warp 大小不同\u003C\u002Fh4>\u003Cul>\n\u003Cli>\u003Cstrong>NVIDIA GPU\u003C\u002Fstrong>：Warp 大小为32个线程\u003C\u002Fli>\n\u003Cli>\u003Cstrong>天数智芯 GPU\u003C\u002Fstrong>：Warp 大小为64个线程\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>影响\u003C\u002Fstrong>：原有的 block 大小设置可能导致&quot;尾巴效应&quot;，即最后一个 warp 中部分线程处于空闲状态，造成资源浪费。\u003C\u002Fp>\n\u003Ch4 id=\"2-block-线程限制\">\u003Ca class=\"anchor\" href=\"#2-block-线程限制\" aria-label=\"跳转到标题：2. Block 线程限制\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>2. Block 线程限制\u003C\u002Fh4>\u003Cul>\n\u003Cli>\u003Cstrong>NVIDIA GPU\u003C\u002Fstrong>：单个 block 最多1024个线程\u003C\u002Fli>\n\u003Cli>\u003Cstrong>天数智芯GPU\u003C\u002Fstrong>：单个 block 最多4096个线程\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>优势\u003C\u002Fstrong>：更大的 block 线程数提供了更高的调度灵活性，有利于提高资源利用率。\u003C\u002Fp>\n\u003Ch4 id=\"3-共享内存配置\">\u003Ca class=\"anchor\" href=\"#3-共享内存配置\" aria-label=\"跳转到标题：3. 共享内存配置\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>3. 共享内存配置\u003C\u002Fh4>\u003Cul>\n\u003Cli>\u003Cstrong>典型配置\u003C\u002Fstrong>：每个计算单元（CU）配备 128KB 共享内存\u003C\u002Fli>\n\u003Cli>\u003Cstrong>调度影响\u003C\u002Fstrong>：block 使用的共享内存大小直接影响可并行调度的 block 数量\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"编程模型兼容性\">\u003Ca class=\"anchor\" href=\"#编程模型兼容性\" aria-label=\"跳转到标题：编程模型兼容性\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>编程模型兼容性\u003C\u002Fh3>\u003Cp>天数智芯 GPU 实现了 CUDA 常用 API 的完整兼容：\u003C\u002Fp>\n\u003Cul>\n\u003Cli>主机端 API（如 cudaMalloc、cudaMemcpy 等）\u003C\u002Fli>\n\u003Cli>设备端内置函数（数学函数、原子操作等）\u003C\u002Fli>\n\u003Cli>编程语法（\u003Ccode>__global__\u003C\u002Fcode>、\u003Ccode>__device__\u003C\u002Fcode>等关键字）\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cblockquote>\n\u003Cp>\u003Cstrong>关键结论\u003C\u002Fstrong>：标准的CUDA程序通常无需修改源代码即可在天数智芯GPU上运行。\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch2 id=\"cuda-程序迁移过程\">\u003Ca class=\"anchor\" href=\"#cuda-程序迁移过程\" aria-label=\"跳转到标题：CUDA 程序迁移过程\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>CUDA 程序迁移过程\u003C\u002Fh2>\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_30_zw03.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=XAc449qqpRV%2BsbzpNAhgFS8e3OU%3D\" alt=\"\">\u003C\u002Fp>\n\u003Ch3 id=\"需要修改的代码类型\">\u003Ca class=\"anchor\" href=\"#需要修改的代码类型\" aria-label=\"跳转到标题：需要修改的代码类型\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>需要修改的代码类型\u003C\u002Fh3>\u003Ch4 id=\"1-ptx-汇编代码\">\u003Ca class=\"anchor\" href=\"#1-ptx-汇编代码\" aria-label=\"跳转到标题：1. PTX 汇编代码\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>1. PTX 汇编代码\u003C\u002Fh4>\u003Cul>\n\u003Cli>\u003Cstrong>问题\u003C\u002Fstrong>：PTX 是 NVIDIA 特有的中间汇编语言\u003C\u002Fli>\n\u003Cli>\u003Cstrong>解决方案\u003C\u002Fstrong>：重写为标准 CUDA C++ 代码\u003C\u002Fli>\n\u003Cli>\u003Cstrong>建议\u003C\u002Fstrong>：尽量避免使用汇编代码，优先使用高级语言实现\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"2-非标准-cuda-扩展\">\u003Ca class=\"anchor\" href=\"#2-非标准-cuda-扩展\" aria-label=\"跳转到标题：2. 非标准 CUDA 扩展\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>2. 非标准 CUDA 扩展\u003C\u002Fh4>\u003Cul>\n\u003Cli>\u003Cstrong>问题\u003C\u002Fstrong>：某些 NVIDIA 特有的 API 或编译器扩展\u003C\u002Fli>\n\u003Cli>\u003Cstrong>检查方法\u003C\u002Fstrong>：编译时查看未定义符号错误\u003C\u002Fli>\n\u003Cli>\u003Cstrong>解决方案\u003C\u002Fstrong>：使用天数智芯提供的等效 API 替代\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"3-硬件相关假设\">\u003Ca class=\"anchor\" href=\"#3-硬件相关假设\" aria-label=\"跳转到标题：3. 硬件相关假设\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>3. 硬件相关假设\u003C\u002Fh4>\u003Cul>\n\u003Cli>\u003Cstrong>问题\u003C\u002Fstrong>：代码中硬编码了 NVIDIA GPU 的硬件参数\u003C\u002Fli>\n\u003Cli>\u003Cstrong>示例\u003C\u002Fstrong>：假设 warp 大小为 32，或 block 最大线程数为 1024\u003C\u002Fli>\n\u003Cli>\u003Cstrong>解决方案\u003C\u002Fstrong>：使用运行时查询或宏定义来适配不同硬件\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"编译错误排查\">\u003Ca class=\"anchor\" href=\"#编译错误排查\" aria-label=\"跳转到标题：编译错误排查\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>编译错误排查\u003C\u002Fh3>\u003Cp>常见的编译错误主要来源于：\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>非标准C++代码\u003C\u002Fstrong>：不同编译器对非标准代码的容错处理不同\u003C\u002Fli>\n\u003Cli>\u003Cstrong>未初始化内存\u003C\u002Fstrong>：某些编译器自动初始化内存为 0，而其他编译器不会\u003C\u002Fli>\n\u003Cli>\u003Cstrong>API缺失\u003C\u002Fstrong>：天数智芯 SDK 可能尚未实现某些较新的 CUDA API\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>调试建议\u003C\u002Fstrong>：仔细阅读编译错误信息，逐条修正代码规范性问题。\u003C\u002Fp>\n\u003Ch2 id=\"编译环境配置\">\u003Ca class=\"anchor\" href=\"#编译环境配置\" aria-label=\"跳转到标题：编译环境配置\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>编译环境配置\u003C\u002Fh2>\u003Ch3 id=\"sdk-安装步骤\">\u003Ca class=\"anchor\" href=\"#sdk-安装步骤\" aria-label=\"跳转到标题：SDK 安装步骤\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>SDK 安装步骤\u003C\u002Fh3>\u003Col>\n\u003Cli>\u003Cp>\u003Cstrong>依赖准备\u003C\u002Fstrong>：\u003C\u002Fp>\n\u003Cul>\n\u003Cli>安装 C\u002FC++ 编译器和标准库\u003C\u002Fli>\n\u003Cli>安装 make 工具\u003C\u002Fli>\n\u003Cli>安装 Linux 内核头文件\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>\u003Cstrong>SDK 安装\u003C\u002Fstrong>：\u003C\u002Fp>\n\u003Cul>\n\u003Cli>下载天数智芯 SDK 安装包\u003C\u002Fli>\n\u003Cli>按照官方文档执行安装脚本\u003C\u002Fli>\n\u003Cli>验证驱动安装（执行\u003Ccode>ixsmi\u003C\u002Fcode>命令）\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>\u003Cstrong>环境变量配置\u003C\u002Fstrong>：\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\"># 添加编译器路径\nexport PATH=$PATH:\u002Fpath\u002Fto\u002Ftianshu\u002Fbin\n\n# 添加动态库路径\nexport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:\u002Fpath\u002Fto\u002Ftianshu\u002Flib64\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3 id=\"编译器选择\">\u003Ca class=\"anchor\" href=\"#编译器选择\" aria-label=\"跳转到标题：编译器选择\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>编译器选择\u003C\u002Fh3>\u003Cul>\n\u003Cli>\u003Cstrong>主机端代码\u003C\u002Fstrong>（纯 CPU 代码）：可使用系统默认编译器\u003C\u002Fli>\n\u003Cli>\u003Cstrong>设备端代码\u003C\u002Fstrong>（包含核函数）：必须使用天数智芯提供的编译器\u003C\u002Fli>\n\u003Cli>\u003Cstrong>混合代码\u003C\u002Fstrong>（.cu 文件）：必须使用天数智芯编译器\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2 id=\"编译配置详解\">\u003Ca class=\"anchor\" href=\"#编译配置详解\" aria-label=\"跳转到标题：编译配置详解\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>编译配置详解\u003C\u002Fh2>\u003Ch3 id=\"基础编译命令\">\u003Ca class=\"anchor\" href=\"#基础编译命令\" aria-label=\"跳转到标题：基础编译命令\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>基础编译命令\u003C\u002Fh3>\u003Cpre>\u003Ccode class=\"language-bash\"># 天数智芯编译器\ntianshu-c++\n\n# 必需参数\n-fPIC                    # 生成位置无关代码（用于动态库）\n--gpu-architecture=iv11  # 指定GPU架构（根据实际型号调整）\n--cuda-path=\u002Fpath\u002Fto\u002Fsdk # 指定SDK路径\n\n# 标准参数\n-I\u002Fpath\u002Fto\u002Finclude       # 头文件路径\n-L\u002Fpath\u002Fto\u002Flib64         # 库文件路径\n-lcuda                   # 链接CUDA运行时库\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3 id=\"makefile-迁移\">\u003Ca class=\"anchor\" href=\"#makefile-迁移\" aria-label=\"跳转到标题：Makefile 迁移\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>Makefile 迁移\u003C\u002Fh3>\u003Cp>Makefile 迁移主要涉及变量定义的修改：\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-makefile\"># 原NVIDIA配置\nNVCC = nvcc\nNVCC_FLAGS = -arch=sm_75 -O3\n\n# 天数智芯配置\nTS_CC = tianshu-c++\nTS_FLAGS = --gpu-architecture=iv11 -O3\n\n# 编译规则\n%.o: %.cu\n\t$(TS_CC) $(TS_FLAGS) -c $&lt; -o $@\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>关键点\u003C\u002Fstrong>：移除 NVIDIA 特有的编译参数，替换为天数智芯对应的参数。\u003C\u002Fp>\n\u003Ch3 id=\"cmake-配置\">\u003Ca class=\"anchor\" href=\"#cmake-配置\" aria-label=\"跳转到标题：CMake 配置\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>CMake 配置\u003C\u002Fh3>\u003Cp>天数智芯提供了增强版 CMake，简化了配置过程：\u003C\u002Fp>\n\u003Ch4 id=\"1-安装天数智芯-cmake\">\u003Ca class=\"anchor\" href=\"#1-安装天数智芯-cmake\" aria-label=\"跳转到标题：1. 安装天数智芯 CMake\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>1. 安装天数智芯 CMake\u003C\u002Fh4>\u003Cpre>\u003Ccode class=\"language-bash\"># 安装增强版CMake\n.\u002Ftianshu-cmake-installer.sh --prefix=\u002Fopt\u002Ftianshu-cmake\n\n# 配置环境变量\nexport PATH=\u002Fopt\u002Ftianshu-cmake\u002Fbin:$PATH\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4 id=\"2-cmakelists-txt-配置\">\u003Ca class=\"anchor\" href=\"#2-cmakelists-txt-配置\" aria-label=\"跳转到标题：2. CMakeLists.txt 配置\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>2. CMakeLists.txt 配置\u003C\u002Fh4>\u003Cpre>\u003Ccode class=\"language-cmake\">cmake_minimum_required(VERSION 3.18)\nproject(MyProject LANGUAGES CXX CUDA)\n\n# 查找天数智芯CUDA支持\nfind_package(CUDA REQUIRED)\n\n# 包含头文件和库路径\ninclude_directories(${TIANSHU_INCLUDE_DIRS})\nlink_directories(${TIANSHU_LIBRARY_DIRS})\n\n# 设置GPU架构\nset(CMAKE_CUDA_ARCHITECTURES &quot;iv11&quot;)\n\n# 添加可执行文件\ncuda_add_executable(myapp main.cu utils.cu)\n\n# 链接运行时库\ntarget_link_libraries(myapp ${TIANSHU_CUDA_LIBRARIES})\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2 id=\"天数-sdk-中的常用工具\">\u003Ca class=\"anchor\" href=\"#天数-sdk-中的常用工具\" aria-label=\"跳转到标题：天数 SDK 中的常用工具\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>天数 SDK 中的常用工具\u003C\u002Fh2>\u003Cp>天数智芯 SDK 提供了一套完整的开发辅助工具，涵盖了从状态监控、性能分析到代码调试的全流程。为了方便 CUDA 开发者快速上手，下表整理了主要工具及其功能，并列出了与 NVIDIA 工具链的对应关系。\u003C\u002Fp>\n\u003Ch3 id=\"1-系统管理与监控\">\u003Ca class=\"anchor\" href=\"#1-系统管理与监控\" aria-label=\"跳转到标题：1. 系统管理与监控\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>1. 系统管理与监控\u003C\u002Fh3>\u003Cul>\n\u003Cli>\u003Cstrong>ixSMI (System Management Interface)\u003C\u002Fstrong>\u003Cul>\n\u003Cli>\u003Cstrong>对标工具\u003C\u002Fstrong>：\u003Ccode>nvidia-smi\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>功能简介\u003C\u002Fstrong>：提供系统管理信息，用于对天数智芯加速卡进行实时监控，包括查看驱动版本、设备温度、功耗及显存使用率等关键指标。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"2-性能分析-profiling\">\u003Ca class=\"anchor\" href=\"#2-性能分析-profiling\" aria-label=\"跳转到标题：2. 性能分析 (Profiling)\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>2. 性能分析 (Profiling)\u003C\u002Fh3>\u003Cul>\n\u003Cli>\u003Cp>\u003Cstrong>ixPROF (Profiler 工具)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>对标工具\u003C\u002Fstrong>：\u003Ccode>nvprof\u003C\u002Fcode> \u002F \u003Ccode>nsys\u003C\u002Fcode> (命令行模式)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>功能简介\u003C\u002Fstrong>：用于收集和查看追踪数据 (Trace)，帮助开发者了解加速卡的详细运行状态，从而进行系统级的性能瓶颈分析。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Cp>\u003Cstrong>ixSYS (可视化性能分析工具)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>对标工具\u003C\u002Fstrong>：\u003Ccode>Nsight Systems\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>功能简介\u003C\u002Fstrong>：在 CUDA 应用程序运行时对系统进行采样并抓取 Trace。其核心优势是支持 \u003Cstrong>Web 图形化展示\u003C\u002Fstrong>，开发者可以通过浏览器直观地查看统计图表和性能流水线。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"3-代码调试\">\u003Ca class=\"anchor\" href=\"#3-代码调试\" aria-label=\"跳转到标题：3. 代码调试\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>3. 代码调试\u003C\u002Fh3>\u003Cul>\n\u003Cli>\u003Cstrong>ixGDB (代码调试工具)\u003C\u002Fstrong>\u003Cul>\n\u003Cli>\u003Cstrong>对标工具\u003C\u002Fstrong>：\u003Ccode>cuda-gdb\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>功能简介\u003C\u002Fstrong>：针对天数智芯加速卡的开源调试工具，支持对运行在 GPU 上的 CUDA 应用程序进行断点调试、变量检查和单步执行。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_30_zw04.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=ZwX1hgLE6pFWC7HwxOzWsa56ad8%3D\" alt=\"\">\u003C\u002Fp>\n\u003Ch3 id=\"总结\">\u003Ca class=\"anchor\" href=\"#总结\" aria-label=\"跳转到标题：总结\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>总结\u003C\u002Fh3>\u003Cp>CUDA 程序迁移至天数智芯 GPU 是一个系统工程，需要从兼容性评估、代码适配、编译配置到性能优化的全流程考虑。虽然天数智芯 GPU 在编程模型上保持了良好的 CUDA 兼容性，但要获得最佳性能仍需针对其硬件特性进行专门优化。随着国产 GPU 生态的不断完善，相信未来会有更多优秀的 AI 和高性能计算应用在国产平台上发挥出色性能。\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_01_zw6.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=a8H1mmcFuHQlXPwOb9vIkgGHb3g%3D\" alt=\"2025冬季训练营课程表\">\u003C\u002Fp>\n\u003Ch3 id=\"学习贴士\">\u003Ca class=\"anchor\" href=\"#学习贴士\" aria-label=\"跳转到标题：💡 学习贴士\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>💡 学习贴士\u003C\u002Fh3>\u003Cp>更多细节及完整课程内容，请观看直播或查看课程回放。\u003C\u002Fp>\n\u003Cp>链接：\u003Ca href=\"https:\u002F\u002Fwww.infinitensor.com\u002Fcamp\u002Fwinter2025\">https:\u002F\u002Fwww.infinitensor.com\u002Fcamp\u002Fwinter2025\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3 id=\"训练营报名持续进行中\">\u003Ca class=\"anchor\" href=\"#训练营报名持续进行中\" aria-label=\"跳转到标题：📚 训练营报名持续进行中\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>📚 训练营报名持续进行中\u003C\u002Fh3>\u003Cp>扫码报名与加入群聊，或点击 \u003Cstrong>「阅读原文」\u003C\u002Fstrong> 直达官网报名\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_01_zw7.jpg?Expires=1792752556&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=1gVq94K1yhwDat7%2FIiB1Q44urNk%3D\" alt=\"\">\u003C\u002Fp>\n",[128,131,133,137,140,143,145,148,150,153,156,159,161,163,166,168,170,172,175,178,181,184,187,190,193,196,198,201],{"id":129,"text":130,"level":110},"天数智芯gpu架构特性","天数智芯GPU架构特性",{"id":132,"text":132,"level":9},"核心架构差异",{"id":134,"text":135,"level":136},"1-warp-大小不同","1. Warp 大小不同",4,{"id":138,"text":139,"level":136},"2-block-线程限制","2. Block 线程限制",{"id":141,"text":142,"level":136},"3-共享内存配置","3. 共享内存配置",{"id":144,"text":144,"level":9},"编程模型兼容性",{"id":146,"text":147,"level":110},"cuda-程序迁移过程","CUDA 程序迁移过程",{"id":149,"text":149,"level":9},"需要修改的代码类型",{"id":151,"text":152,"level":136},"1-ptx-汇编代码","1. PTX 汇编代码",{"id":154,"text":155,"level":136},"2-非标准-cuda-扩展","2. 非标准 CUDA 扩展",{"id":157,"text":158,"level":136},"3-硬件相关假设","3. 硬件相关假设",{"id":160,"text":160,"level":9},"编译错误排查",{"id":162,"text":162,"level":110},"编译环境配置",{"id":164,"text":165,"level":9},"sdk-安装步骤","SDK 安装步骤",{"id":167,"text":167,"level":9},"编译器选择",{"id":169,"text":169,"level":110},"编译配置详解",{"id":171,"text":171,"level":9},"基础编译命令",{"id":173,"text":174,"level":9},"makefile-迁移","Makefile 迁移",{"id":176,"text":177,"level":9},"cmake-配置","CMake 配置",{"id":179,"text":180,"level":136},"1-安装天数智芯-cmake","1. 安装天数智芯 CMake",{"id":182,"text":183,"level":136},"2-cmakelists-txt-配置","2. CMakeLists.txt 配置",{"id":185,"text":186,"level":110},"天数-sdk-中的常用工具","天数 SDK 中的常用工具",{"id":188,"text":189,"level":9},"1-系统管理与监控","1. 系统管理与监控",{"id":191,"text":192,"level":9},"2-性能分析-profiling","2. 性能分析 (Profiling)",{"id":194,"text":195,"level":9},"3-代码调试","3. 代码调试",{"id":197,"text":197,"level":9},"总结",{"id":199,"text":200,"level":9},"学习贴士","💡 学习贴士",{"id":202,"text":203,"level":9},"训练营报名持续进行中","📚 训练营报名持续进行中"]