[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"site-home-live-entry-setting":3,"site-header-contests":8,"site-header-camps":49,"study-material-detail-study-18":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=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=YuOgm%2FgmD4nuySjwNMl5nm0fmKI%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=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=Kxv2UTqtU0%2FwvYQCDERqdg0W6E4%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=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=nIij3MTYWjwdhBM00gMTqmyLnUM%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_18_fm.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=e1JSZbBzQAB85bv%2BqtUA9FQ7hTg%3D","InfiniTensor,冬季训练营,AI编译器,前端优化,算子融合","聚焦 AI 编译器前端优化，解析图层改写、算子融合与前端阶段性能提升方法。","2026-10-22 20:38:11",2,"InfiniTensor 冬季训练营 AI 编译器第二课《AI 编译器中的前端优化》","![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw00.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=HMyzdlj%2BDUwXCTAA97vSkjxCFxs%3D)\r\n\r\n\r\n2026 年 1 月 15 日，2025 冬季 InfiniTensor 大模型与人工智能系统训练营AI编译器系列第二课《AI 编译器中的前端优化》开讲。\r\n\r\n本节课主要讲述常用前端优化技术、模型优化案例分析、CUDA Graph 简介等内容。\r\n\r\n### 常用前端优化技术\r\n#### 1. 图层优化概述\r\n- 定义：将一种计算图结构，在算术结果不变的情况下，基于一系列预先写好的模板，对计算图进行相应的图替换操作。\r\n- 计算图三要素：拓扑、张量、算子。\r\n- 优化目标：解决结构冗余和读写冗余。\r\n#### 2. 结构冗余与解决方法\r\n- 结构冗余：模型构建和执行中的无效计算节点或重复计算子图。\r\n- 解决方法：常量折叠、节点消除、分支合并。\r\n#### 3. 读写冗余与解决方法\r\n- 读写冗余：数据处理和传输中的重复读写。\r\n- 解决方法：算子融合、布局转换。\r\n#### 4. 具体优化技术\r\n- **常量折叠和常量传播**\r\n  - 定义：提前识别并折叠输入为常量的算子。\r\n  - 示例：传统编译器与 AI 编译器中的常量折叠对比。\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw01.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=ALYr0m1X7htzyRTcFs08S7XCgr4%3D)\r\n\r\n- **冗余节点消除**\r\n  - 定义：删除计算图中无实质作用的节点。\r\n  - 类型：节点本身无意义、节点参数无意义、节点存在位置无意义、节点前后反义。\r\n  - 示例：死代码消除在传统编译器与 AI 编译器中的对比。\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw02.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=%2FXeIap3mqaVoqtxTCtgrKCTLCsk%3D)\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw03.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=hn0kY%2F2tDCZbe0mddil9koFBKDk%3D)\r\n\r\n- **算子融合**\r\n  - 定义：将多个算子融合为一个算子以优化计算过程。\r\n  - 示例：Conv 与 BatchNorm 的融合。\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw04.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=k47JtkMNSgIRxPFlyfi%2FwlP4tyo%3D)\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw05.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=XvjiQCG4LbrxwXL6HAJHLqDWrWk%3D)\r\n\r\n- **数据布局转换**\r\n  - 定义：修改数据布局以减少访存耗时。\r\n  - 常见布局：NCHW 与 NHWC。\r\n  - 示例：Conv 算子在不同数据布局下的性能差异。\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw06.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=Ux4iG9aKVndK8yYQnbB5jsR56iM%3D)\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw07.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=Qvmg%2B1V1hFFTNMy84JOSMZt0ZRY%3D)\r\n\r\n### 模型优化案例分析\r\n#### 1. 案例背景\r\n- 模型性能分析：发现 Gather 操作耗时占比高。\r\n- Gather 操作特性：根据 indices 值从 data 中取值，indices 无规律时性能损失大。\r\n#### 2. 优化策略\r\n- 分析 Gather 操作逻辑：发现 indices 取值有一定规律性。\r\n- 实现 NPU 上的对应算子：利用 NPU 并行性加速计算。\r\n- 图替换操作：使用 Graph Surgeon 进行图替换。\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw08.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=zzDe15M0k7AVE0DbiwcDEZf9r64%3D)\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw09.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=oz3LC%2BohtSJNqRa8FSCGSgvEgrE%3D)\r\n\r\n\r\n### CUDA Graph\r\n#### 1. 传统串行任务提交模式的挑战\r\n- 内核启动延迟\r\n- CPU-GPU 交互瓶颈\r\n#### 2. CUDA Graph 革新性解决方案\r\n- 拓扑预定义：将计算流程编码为 DAG 流图，一次性提交整个计算图。\r\n- 极低开销：通过 CUDA graph launch 触发 GPU 直接执行预编译指令序列。\r\n- 局限性：对静态计算图的强依赖性。\r\n#### 3. CUDA Graph 使用示例\r\n- 创建 CUDA Graph：定义数据结构，初始化空计算图。\r\n- 捕获计算任务：显式构建或流式捕获计算节点。\r\n- 实例化可执行图：创建实例化可执行图并提交执行。\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw10.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=5SrgLLq%2FchR8rt2j75QSo5lfFro%3D)\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw11.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=nMqNzJN2G8VoMDUPqfQjnMhP%2FEM%3D)\r\n\r\n\r\n\r\n### 实践环节与代码展示\r\n#### 1. 构建 ONNX 模型流程\r\n\r\n![](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw12.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=jbYFxSeij2NoBbqh1bqtOYooyog%3D)\r\n\r\n#### 2. 优化技术代码示例\r\n- 常量折叠示例。\r\n- 冗余节点消除示例（相反意义的 Transpose）。\r\n- 算子融合示例（Conv 与 BatchNorm 融合）。\r\n#### 3. 实践建议\r\n- 使用 ONNX Simplifier 进行模型优化。\r\n- 利用 Netron 工具可视化 ONNX 模型。\r\n\r\n### 总结\r\n本节课梳理了常用前端优化技术，强调模型优化案例与 CUDA Graph 的重要性。下节课将介绍 AI 编译器后端优化技术，探讨更多实际模型优化案例。\r\n\r\n\r\n![2025冬季训练营课程表](https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_01_zw6.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=Ffj54EQtw2SzZEJdvnMd%2BBMhib0%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=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=ZU5%2F7VUywJvItSFp2MjcU%2FW%2FeuQ%3D)",{"publishTime":7,"createTime":109,"canonicalPath":114,"id":115,"title":116},"\u002Fstudy-material\u002Fstudy-17","study-17","InfiniTensor 冬季训练营 CUDA 编程第二课《性能模型与逐元素优化》",91,"\u002Fstudy-material\u002Fstudy-18","study-18","markdown",{"publishTime":7,"createTime":109,"canonicalPath":122,"id":123,"title":124},"\u002Fstudy-material\u002Fstudy-19","study-19","InfiniTensor 冬季训练营Triton & 九齿第二课《Triton-Ascend 编程》",{"htmlContent":126,"headings":127},"\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw00.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=HMyzdlj%2BDUwXCTAA97vSkjxCFxs%3D\" alt=\"\">\u003C\u002Fp>\n\u003Cp>2026 年 1 月 15 日，2025 冬季 InfiniTensor 大模型与人工智能系统训练营AI编译器系列第二课《AI 编译器中的前端优化》开讲。\u003C\u002Fp>\n\u003Cp>本节课主要讲述常用前端优化技术、模型优化案例分析、CUDA Graph 简介等内容。\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-图层优化概述\">\u003Ca class=\"anchor\" href=\"#1-图层优化概述\" aria-label=\"跳转到标题：1. 图层优化概述\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>1. 图层优化概述\u003C\u002Fh4>\u003Cul>\n\u003Cli>定义：将一种计算图结构，在算术结果不变的情况下，基于一系列预先写好的模板，对计算图进行相应的图替换操作。\u003C\u002Fli>\n\u003Cli>计算图三要素：拓扑、张量、算子。\u003C\u002Fli>\n\u003Cli>优化目标：解决结构冗余和读写冗余。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"2-结构冗余与解决方法\">\u003Ca class=\"anchor\" href=\"#2-结构冗余与解决方法\" aria-label=\"跳转到标题：2. 结构冗余与解决方法\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>2. 结构冗余与解决方法\u003C\u002Fh4>\u003Cul>\n\u003Cli>结构冗余：模型构建和执行中的无效计算节点或重复计算子图。\u003C\u002Fli>\n\u003Cli>解决方法：常量折叠、节点消除、分支合并。\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>读写冗余：数据处理和传输中的重复读写。\u003C\u002Fli>\n\u003Cli>解决方法：算子融合、布局转换。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"4-具体优化技术\">\u003Ca class=\"anchor\" href=\"#4-具体优化技术\" aria-label=\"跳转到标题：4. 具体优化技术\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>4. 具体优化技术\u003C\u002Fh4>\u003Cul>\n\u003Cli>\u003Cstrong>常量折叠和常量传播\u003C\u002Fstrong>\u003Cul>\n\u003Cli>定义：提前识别并折叠输入为常量的算子。\u003C\u002Fli>\n\u003Cli>示例：传统编译器与 AI 编译器中的常量折叠对比。\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_18_zw01.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=ALYr0m1X7htzyRTcFs08S7XCgr4%3D\" alt=\"\">\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>冗余节点消除\u003C\u002Fstrong>\u003Cul>\n\u003Cli>定义：删除计算图中无实质作用的节点。\u003C\u002Fli>\n\u003Cli>类型：节点本身无意义、节点参数无意义、节点存在位置无意义、节点前后反义。\u003C\u002Fli>\n\u003Cli>示例：死代码消除在传统编译器与 AI 编译器中的对比。\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_18_zw02.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=%2FXeIap3mqaVoqtxTCtgrKCTLCsk%3D\" alt=\"\">\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw03.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=hn0kY%2F2tDCZbe0mddil9koFBKDk%3D\" alt=\"\">\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>算子融合\u003C\u002Fstrong>\u003Cul>\n\u003Cli>定义：将多个算子融合为一个算子以优化计算过程。\u003C\u002Fli>\n\u003Cli>示例：Conv 与 BatchNorm 的融合。\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_18_zw04.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=k47JtkMNSgIRxPFlyfi%2FwlP4tyo%3D\" alt=\"\">\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw05.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=XvjiQCG4LbrxwXL6HAJHLqDWrWk%3D\" alt=\"\">\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>数据布局转换\u003C\u002Fstrong>\u003Cul>\n\u003Cli>定义：修改数据布局以减少访存耗时。\u003C\u002Fli>\n\u003Cli>常见布局：NCHW 与 NHWC。\u003C\u002Fli>\n\u003Cli>示例：Conv 算子在不同数据布局下的性能差异。\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_18_zw06.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=Ux4iG9aKVndK8yYQnbB5jsR56iM%3D\" alt=\"\">\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw07.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=Qvmg%2B1V1hFFTNMy84JOSMZt0ZRY%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-案例背景\">\u003Ca class=\"anchor\" href=\"#1-案例背景\" aria-label=\"跳转到标题：1. 案例背景\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>1. 案例背景\u003C\u002Fh4>\u003Cul>\n\u003Cli>模型性能分析：发现 Gather 操作耗时占比高。\u003C\u002Fli>\n\u003Cli>Gather 操作特性：根据 indices 值从 data 中取值，indices 无规律时性能损失大。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"2-优化策略\">\u003Ca class=\"anchor\" href=\"#2-优化策略\" aria-label=\"跳转到标题：2. 优化策略\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>2. 优化策略\u003C\u002Fh4>\u003Cul>\n\u003Cli>分析 Gather 操作逻辑：发现 indices 取值有一定规律性。\u003C\u002Fli>\n\u003Cli>实现 NPU 上的对应算子：利用 NPU 并行性加速计算。\u003C\u002Fli>\n\u003Cli>图替换操作：使用 Graph Surgeon 进行图替换。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw08.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=zzDe15M0k7AVE0DbiwcDEZf9r64%3D\" alt=\"\">\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw09.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=oz3LC%2BohtSJNqRa8FSCGSgvEgrE%3D\" alt=\"\">\u003C\u002Fp>\n\u003Ch3 id=\"cuda-graph\">\u003Ca class=\"anchor\" href=\"#cuda-graph\" aria-label=\"跳转到标题：CUDA Graph\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>CUDA Graph\u003C\u002Fh3>\u003Ch4 id=\"1-传统串行任务提交模式的挑战\">\u003Ca class=\"anchor\" href=\"#1-传统串行任务提交模式的挑战\" aria-label=\"跳转到标题：1. 传统串行任务提交模式的挑战\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>1. 传统串行任务提交模式的挑战\u003C\u002Fh4>\u003Cul>\n\u003Cli>内核启动延迟\u003C\u002Fli>\n\u003Cli>CPU-GPU 交互瓶颈\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"2-cuda-graph-革新性解决方案\">\u003Ca class=\"anchor\" href=\"#2-cuda-graph-革新性解决方案\" aria-label=\"跳转到标题：2. CUDA Graph 革新性解决方案\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>2. CUDA Graph 革新性解决方案\u003C\u002Fh4>\u003Cul>\n\u003Cli>拓扑预定义：将计算流程编码为 DAG 流图，一次性提交整个计算图。\u003C\u002Fli>\n\u003Cli>极低开销：通过 CUDA graph launch 触发 GPU 直接执行预编译指令序列。\u003C\u002Fli>\n\u003Cli>局限性：对静态计算图的强依赖性。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"3-cuda-graph-使用示例\">\u003Ca class=\"anchor\" href=\"#3-cuda-graph-使用示例\" aria-label=\"跳转到标题：3. CUDA Graph 使用示例\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>3. CUDA Graph 使用示例\u003C\u002Fh4>\u003Cul>\n\u003Cli>创建 CUDA Graph：定义数据结构，初始化空计算图。\u003C\u002Fli>\n\u003Cli>捕获计算任务：显式构建或流式捕获计算节点。\u003C\u002Fli>\n\u003Cli>实例化可执行图：创建实例化可执行图并提交执行。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw10.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=5SrgLLq%2FchR8rt2j75QSo5lfFro%3D\" alt=\"\">\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw11.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=nMqNzJN2G8VoMDUPqfQjnMhP%2FEM%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-构建-onnx-模型流程\">\u003Ca class=\"anchor\" href=\"#1-构建-onnx-模型流程\" aria-label=\"跳转到标题：1. 构建 ONNX 模型流程\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>1. 构建 ONNX 模型流程\u003C\u002Fh4>\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_18_zw12.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=jbYFxSeij2NoBbqh1bqtOYooyog%3D\" alt=\"\">\u003C\u002Fp>\n\u003Ch4 id=\"2-优化技术代码示例\">\u003Ca class=\"anchor\" href=\"#2-优化技术代码示例\" aria-label=\"跳转到标题：2. 优化技术代码示例\">\u003Cspan class=\"octicon octicon-link\">\u003C\u002Fspan>\u003C\u002Fa>2. 优化技术代码示例\u003C\u002Fh4>\u003Cul>\n\u003Cli>常量折叠示例。\u003C\u002Fli>\n\u003Cli>冗余节点消除示例（相反意义的 Transpose）。\u003C\u002Fli>\n\u003Cli>算子融合示例（Conv 与 BatchNorm 融合）。\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>使用 ONNX Simplifier 进行模型优化。\u003C\u002Fli>\n\u003Cli>利用 Netron 工具可视化 ONNX 模型。\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>本节课梳理了常用前端优化技术，强调模型优化案例与 CUDA Graph 的重要性。下节课将介绍 AI 编译器后端优化技术，探讨更多实际模型优化案例。\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Foss.infinitensor.com\u002Fprod\u002Fimages\u002FKnowledge_Base\u002FKB_01_zw6.jpg?Expires=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=Ffj54EQtw2SzZEJdvnMd%2BBMhib0%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=1792752821&OSSAccessKeyId=LTAI5t9R6uzvTa69CT92cFvV&Signature=ZU5%2F7VUywJvItSFp2MjcU%2FW%2FeuQ%3D\" alt=\"\">\u003C\u002Fp>\n",[128,130,134,137,140,143,145,148,151,154,157,160,163,165,168,171,174,176,179],{"id":129,"text":129,"level":9},"常用前端优化技术",{"id":131,"text":132,"level":133},"1-图层优化概述","1. 图层优化概述",4,{"id":135,"text":136,"level":133},"2-结构冗余与解决方法","2. 结构冗余与解决方法",{"id":138,"text":139,"level":133},"3-读写冗余与解决方法","3. 读写冗余与解决方法",{"id":141,"text":142,"level":133},"4-具体优化技术","4. 具体优化技术",{"id":144,"text":144,"level":9},"模型优化案例分析",{"id":146,"text":147,"level":133},"1-案例背景","1. 案例背景",{"id":149,"text":150,"level":133},"2-优化策略","2. 优化策略",{"id":152,"text":153,"level":9},"cuda-graph","CUDA Graph",{"id":155,"text":156,"level":133},"1-传统串行任务提交模式的挑战","1. 传统串行任务提交模式的挑战",{"id":158,"text":159,"level":133},"2-cuda-graph-革新性解决方案","2. CUDA Graph 革新性解决方案",{"id":161,"text":162,"level":133},"3-cuda-graph-使用示例","3. CUDA Graph 使用示例",{"id":164,"text":164,"level":9},"实践环节与代码展示",{"id":166,"text":167,"level":133},"1-构建-onnx-模型流程","1. 构建 ONNX 模型流程",{"id":169,"text":170,"level":133},"2-优化技术代码示例","2. 优化技术代码示例",{"id":172,"text":173,"level":133},"3-实践建议","3. 实践建议",{"id":175,"text":175,"level":9},"总结",{"id":177,"text":178,"level":9},"学习贴士","💡 学习贴士",{"id":180,"text":181,"level":9},"训练营报名持续进行中","📚 训练营报名持续进行中"]