Skip to content
View AdvancedCompiler's full-sized avatar

Block or report AdvancedCompiler

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AdvancedCompiler/README.md

程序性能优化理论与方法 & 深度学习编译器设计

先进编译实验室编著的《程序性能优化理论与方法》(实操课程)以及《深度学习编译器设计》两本书籍所配套的文字课程、PPT课件以及配套code将陆续进行更新……同时也欢迎大家关注先进编译实验室的B站账号、知乎,添加微信小助手,加入交流群进行讨论学习,共同进步!!!

B站bilibili个人主页 知乎知乎个人主页 B站微信名片

先进编译实验室团队长期致力于高性能计算、编译技术、程序优化等方向的科研工作。先后承研国家重大专项、核高基专项、973、863、自然科学基金等相关课题,在高性能计算、并行程序设计与优化、国产自主可控等相关领域已经形成了若干领先成果,曾获国家科技进步一等奖、省部级科技进步一等奖等奖项。在国内外超算及程序优化的竞赛中,多次获PAC全国并行应用挑战赛优化金奖、银奖、铜奖,ASC世界大学生超级计算机竞赛一等奖、二等奖、卓越奖,CPC国产并行应用挑战赛银奖、铜奖,IPCC-ACM中国国际并行计算挑战赛二等奖等。

程序性能优化理论与方法

本书及课程从计算机体系结构、编译系统、操作系统、作业管理等多角度,对程序实现中的算法、数据结构、程序设计语言特性、资源占用及程序运行过程等多维度,全面探讨程序性能优化的理论和方法。 本书适用于具备一定程序设计基础并致力于程序性能优化的程序设计人员,也可以作为高等教育计算机程序设计的学习使用,还可作为从事性能优化专业技术人员的参考书。 weixin_logo

章节目录

章节名称 视频课程 实操课程 课件源码
1 程序性能优化的意义 专栏文章程序性能优化的意义(一) B站bilibili
专栏文章程序性能优化的意义(二) B站bilibili
slideslide pdfPDF
2 程序性能的度量指标及优化流程 专栏文章程序性能的度量指标及优化流程 B站bilibili slideslide pdfPDF codecode
3 程序性能的分析和测量 专栏文章程序性能的分析和测量(一) B站bilibili
专栏文章程序性能的分析和测量(二) B站bilibili
专栏文章程序性能的分析和测量(三) B站bilibili
slideslide pdfPDF codecode
4 系统配置优化 专栏文章系统配置优化(一) B站bilibili
专栏文章系统配置优化(二) B站bilibili
slideslide pdfPDF codecode
5 编译与运行优化 专栏文章编译与运行优化(一) B站bilibili
专栏文章编译与运行优化(二) B站bilibili
专栏文章编译与运行优化(三) B站bilibili
专栏文章编译器前端 B站bilibili
专栏文章编译器中端 B站bilibili
专栏文章编译器后端 B站bilibili
专栏文章编译选项 B站bilibili
专栏文章循环展开 B站bilibili
专栏文章循环分布 B站bilibilizhihu知乎
专栏文章循环剥离 B站bilibilizhihu知乎
专栏文章过程间优化 B站bilibili
专栏文章循环级向量化 B站bilibilizhihu知乎
专栏文章基本块级向量化 B站bilibilizhihu知乎
专栏文章数据预取优化 B站bilibilizhihu知乎
专栏文章浮点优化 B站bilibili
专栏文章反馈优化 B站bilibilizhihu知乎
专栏文章链接时优化 B站bilibilizhihu知乎
专栏文章编译指示 B站bilibilizhihu知乎
专栏文章数学库优化 B站bilibilizhihu知乎
专栏文章运行时优化 B站bilibilizhihu知乎
slideslide pdfPDF codecode
6 程序编写优化 专栏文章程序编写优化(一) B站bilibili
专栏文章程序编写优化(二) B站bilibili
专栏文章程序编写优化(三) B站bilibili
专栏文章程序编写优化(四) B站bilibili
专栏文章程序编写优化(五) B站bilibili
专栏文章算法优化 B站bilibilizhihu知乎
专栏文章典型数据结构的性能分析 B站bilibilizhihu知乎
专栏文章选择合适的数据类型 B站bilibilizhihu知乎
专栏文章选择合适的数据结构 B站bilibilizhihu知乎
专栏文章别名消除 B站bilibilizhihu知乎
专栏文章常数传播 B站bilibilizhihu知乎
专栏文章传参优化 B站bilibilizhihu知乎
专栏文章内联优化 B站bilibili
专栏文章过程克隆 B站bilibilizhihu知乎
专栏文章全局变量优化 B站bilibili
专栏文章循环展开和压紧 B站bilibili
专栏文章循环不变量外提 B站bilibili
专栏文章循环合并 B站bilibili
专栏文章循环分段 B站bilibili
专栏文章循环分块 B站bilibili
专栏文章循环交换 B站bilibili
专栏文章循环分裂 B站bilibili
专栏文章循环倾斜 B站bilibili
专栏文章循环分布 B站bilibili
专栏文章删除冗余语句 B站bilibili
专栏文章代数变换 B站bilibili
专栏文章公共子表达式优化 B站bilibili
专栏文章合并判断条件 B站bilibili
专栏文章生成选择指令 B站bilibili
专栏文章分支语句优化之运用条件编译 B站bilibili
专栏文章分支语句优化之移除分支语句 B站bilibili
slideslide pdfPDF codecode
7 单核优化 专栏文章指令级并行(一) B站bilibili
专栏文章指令级并行(二) B站bilibili
专栏文章数据级并行(一) B站bilibili
专栏文章数据级并行(二) B站bilibili
专栏文章数据级并行(三) B站bilibili
专栏文章指令流水 B站bilibili
专栏文章超长指令字 B站bilibili
专栏文章函数的向量化 B站bilibili
专栏文章基本块的向量化 B站bilibili
专栏文章循环的向量化 B站bilibili
专栏文章分支向量化 B站bilibili
专栏文章归约向量化 B站bilibili
专栏文章不对齐访存 B站bilibili
专栏文章不连续访存 B站bilibili
专栏文章向量重用 B站bilibili
专栏文章向量运算融合 B站bilibili
专栏文章循环完全展开 B站bilibili
slideslide pdfPDF codecode
8 访存优化 专栏文章访存优化(一) B站bilibili
专栏文章访存优化(二) B站bilibili
专栏文章访存优化(三) B站bilibili
专栏文章访存优化(四) B站bilibili
专栏文章访存优化(五) B站bilibili
专栏文章访存优化(六) B站bilibili
专栏文章寄存器分配 B站bilibili
专栏文章寄存器重用 B站bilibili
专栏文章缓存分块 B站bilibili
专栏文章减少伪共享 B站bilibili
专栏文章数据预取 B站bilibili
专栏文章减少内存读写 B站bilibili
专栏文章数据对齐 B站bilibili
专栏文章多线程操作 B站bilibili
专栏文章数组重组 B站bilibili
专栏文章数组转置 B站bilibili
专栏文章结构属性域调整 B站bilibili
专栏文章结构体拆分 B站bilibili
专栏文章结构体数组转换 B站bilibili
slideslide pdfPDF codecode
9 OpenMP程序优化 专栏文章OpenMP编程简介 B站bilibili
专栏文章并行区重构 B站bilibili
专栏文章向量化指导命令 B站bilibili
专栏文章避免伪共享 B站bilibili
专栏文章负载均衡优化 B站bilibili
专栏文章避免隐式同步 B站bilibili
专栏文章流水并行优化 B站bilibili
专栏文章OpenMP程序编写 B站bilibili
专栏文章OpenMP版矩阵乘 B站bilibili
专栏文章并行区扩张 B站bilibili
专栏文章并行区合并 B站bilibili
专栏文章数据填充避免伪共享 B站bilibili
专栏文章循环向量化 B站bilibili
专栏文章循环嵌套合并调度 B站bilibili
专栏文章线程调度配置策略 B站bilibili
专栏文章串并行切换 B站bilibili
专栏文章线程数设置优化 B站bilibili
专栏文章分析隐式同步 B站bilibili
专栏文章消除隐式同步 B站bilibili
专栏文章流水并行示例 B站bilibili
专栏文章流水并行粒度 B站bilibili
slideslide pdfPDF codecode
10 CUDA程序优化 专栏文章CUDA程序优化(一) B站bilibili
专栏文章CUDA程序优化(二) B站bilibili
专栏文章CUDA程序优化(三) B站bilibili
专栏文章CUDA程序优化(四) B站bilibili
专栏文章CUDA程序编写 B站bilibili
专栏文章线程结构优化 B站bilibili
专栏文章分支优化 B站bilibili
专栏文章访存优化(1) B站bilibili
专栏文章访存优化(2) B站bilibili
专栏文章数据预取 B站bilibili
专栏文章循环展开 B站bilibili
slideslide pdfPDF codecode
11 MPI程序优化 专栏文章MPI程序简介(一) B站bilibili
专栏文章MPI程序简介(二) B站bilibili
专栏文章数据划分优化 B站bilibili
slideslide pdfPDF codecode
12 多层次并行程序优化 codecode

附录

LLVM编译器入门

章节名称 视频课程 PPT
1 LLVM整体设计 B站bilibili zhihu知乎
2 Clang前端 B站bilibili zhihu知乎
3 IR优化 B站bilibili
4 代码生成(上) B站bilibili
5 代码生成(下) B站bilibili

循环优化专题

章节名称 视频课程 课件文章
1 循环展开和压紧 B站bilibili slideslide pdfPDFzhihu知乎
2 循环合并 B站bilibili slideslide pdfPDFzhihu知乎
3 循环分布 B站bilibili slideslide pdfPDFzhihu知乎
4 循环交换 B站bilibili slideslide pdfPDFzhihu知乎
5 循环不变量外提 B站bilibili slideslide pdfPDFzhihu知乎
6 循环分段 B站bilibili slideslide pdfPDFzhihu知乎
7 循环分块 B站bilibili slideslide pdfPDFzhihu知乎
8 循环分裂 B站bilibili slideslide pdfPDFzhihu知乎
9 循环倾斜 B站bilibili slideslide pdfPDFzhihu知乎

其他

章节名称 视频课程 课件文章
HIP代码自动生成工具C2HIPC B站bilibili

深度学习编译器设计

随着大模型的发展与应用,深度学习编译器的内涵和外延逐步扩展,本书分析对比了多种深度学习编译器的特性,并整理概括出深度学习编译器的整体设计作为核心内容,分章节对深度学习编译器的功能模块进行介绍,同时也对深度学习模型、深度学习硬件平台等前置理论知识进行概括总结。 本书旨在通过循序渐进、由上而下的方式,让读者了解深度学习编译器的来龙去脉,从深度学习编译器产生背景到设计理念,从深度学习编译器的模型输入到代码生成,为深度学习编译器的研发和优化提供理论支持。同时,本书在对深度学习编译器各功能模块进行介绍时,也综合了计算图优化、内存分配与优化、算子选择与生成、代码生成与优化、自动并行及模型推理等领域的最新研究成果,这部分内容可以为读者的论文写作及科研分析提供思路。

深度学习编译是一个博大精深且正在快速发展的领域,下面内容旨在分享先进编译实验室团队在学习深度学习编译领域过程中的对顶会论文、主流编译器等的学习心得。

分享目录

内容板块 分享视频 课件文章
1 深度学习概述 B站深度学习的产生与发展
B站深度神经网络的结构
B站神经网络的运行机制
B站CNN-卷积神经网络(一)
B站CNN-卷积神经网络(二)
pdf深度学习概述PDFzhihu深度学习的产生与发展 知乎zhihu深度神经网络的结构 知乎zhihu神经网络的运行机制 知乎zhihuCNN-卷积神经网络 知乎
2 深度学习编译基础 B站深度学习框架发展(一)
B站深度学习框架发展(二)
B站深度学习框架发展(三)
B站深度学习硬件平台
B站深度学习编译发展概述
B站深度学习编译系统概述
B站深度学习自动微分
pdf深度学习框架发展PDFpdfslideszhihu知乎
pdf深度学习硬件平台PDFpdfslideszhihu知乎
zhihu深度学习编译发展概述 知乎
pdf深度学习编译系统概述PDFpdfslideszhihu知乎
pdf深度学习自动微分PDFpdfslideszhihu知乎
3 深度学习编译基础架构MLIR B站深度学习编译基础架构MLIR
B站论文分享:基于MLIR的GPU代码生成
pdf深度学习编译基础架构MLIR PDFpdfslideszhihu知乎
4 深度学习编译器TVM B站TVM概述
B站TVM编译流程与中间表示分析(一)
B站TVM编译流程与中间表示分析(二)
B站TVM自动调度算法AutoTVM
B站TVM自动调优工具Ansor
B站Ansor优化算子代码解读(一)
B站Ansor优化算子代码解读(二)
B站Ansor优化算子代码解读(三)
B站Ansor优化算子代码解读(四)
B站TVM量化框架(一)
B站TVM量化框架(二)
B站TVM量化框架(三)
B站TVM量化框架(四)
pdfTVM编译流程与中间表示分析PDFpdfslideszhihu知乎
5 OpenAI Triton编译器 B站Triton概述
B站Triton安装
B站Triton程序编写
B站Triton源码结构
B站Triton调试方法及工具(上)
B站Triton调试方法及工具(下)
B站Triton编译流程
pdfTriton概述slideszhihu知乎
pdfTriton安装PDFpdfslideszhihu知乎
pdfTriton程序编写PDFpdfslideszhihu知乎
pdfTriton源码结构PDFpdfslideszhihu知乎
pdfTriton调试方法及工具PDFpdfslideszhihu知乎
pdfTriton编译流程PDFpdfslideszhihu知乎
6 深度学习编译优化
B站论文分享:图算融合Apollo
B站论文分享:计算密集型算子融合Chimera
B站论文分享:机器学习访存密集计算编译优化框架Astitch
B站论文分享:算子调度优化Rammer
B站论文分享:计算图访存调度优化Welder
B站论文分享:动态控制流编译优化Cocktailer
B站论文分享:动态神经网络编译优化BrainStorm
B站论文分享:动态shape深度学习算子自动调优DietCode
B站论文分享:动态shape深度学习编译器DISC
B站论文分享:深度学习编译接口FreeTensor
pdf论文分享:图算融合Apollo PDFpdfslideszhihu知乎
pdf论文分享:机器学习访存密集计算编译优化框架Astitch PDFpdfslideszhihu知乎
pdf论文分享:算子调度优化Rammer PDFpdfslideszhihu知乎
pdf论文分享:动态控制流编译优化Cocktailer PDFpdfslides
pdf论文分享:动态shape深度学习算子自动调优DietCode PDFpdfslideszhihu知乎
pdf论文分享:动态shape深度学习编译器DISC PDFpdfslideszhihu知乎
7 自动并行 B站并行划分概述
B站论文分享:自动并行Alpa
B站论文分享:自动并行AlpaServe
B站论文分享:自动并行AvgPipe
B站论文分享:并行程序自动转换
B站论文分享:高性能计算领域大语言模型HPC-Coder
B站论文分享:自动并行FlexFlow
B站论文分享:自动并行CoCoNet
B站论文分享:新型注意力算法FlashAttention
B站论文分享:数据并行通信优化MG-WFBP
B站论文分享:自动并行Merak
pdf并行划分概述PDFpdfslideszhihu知乎
pdf论文分享:高性能计算领域大语言模型HPC-Coder PDFpdfslides
pdf论文分享:自动并行CoCoNet PDFpdfslideszhihu知乎
pdf论文分享:新型注意力算法FlashAttention PDFpdfslideszhihu知乎
8 深度学习模型压缩 B站深度学习模型压缩概述
B站论文分享:无数据模型量化ZeroQ
B站模型压缩方法:模型蒸馏
B站模型压缩方法:剪枝
B站模型压缩方法:量化
zhihu论文分享:无数据模型量化ZeroQ 知乎
pdf模型压缩方法PDFpdfslideszhihu知识蒸馏 知乎zhihu剪枝 知乎zhihu量化 知乎

weixin_logo

Popular repositories Loading

  1. AdvancedCompiler AdvancedCompiler Public

    先进编译实验室的个人主页

    C++ 27 1

  2. FlagGems FlagGems Public

    Forked from FlagOpen/FlagGems

    FlagGems is an operator library for large language models implemented in Triton Language.

    Python