曙海教学优势
面向企事业单位的项目实际需要,本课程以项目实现为导向,秉承二十一年教学品质,授课老师将会与您分享设计的全流程以及工具的综合使用技巧以及经验。您可以定制课程,线上/线下/上门都可以,报名热线:4008699035。
二十多年来,曙海培训的课程培养了大批受欢迎的工程师。曙海的课程在业内广受好评。大批企事业单位和曙海
建立了良好的合作关系,合作企业30万+。
编译器原理及优化技术培训
培训目的
掌握编译技术的原理及优化
课程大纲
1.编译器前端技术分析
1.1 词法分析
1.2 语法分析
1.3 语义分析
1.4 状态机
1.5 符号表
1.6 编译的实现途径-自展
2.中间代码优化
2.1依赖关系分析
1) 基本块
2) 依赖关系种类
3) LiveIn与LiveOut等
4) 数据依赖分析,难点在于跨函数
5) 控制流图 (hell node)
2.2 减少计算量
1) 消除死代码
2) 删除多余计算
3) 代码外提
4) 强度削弱
5) 变换循环控制条件
6) 合并已知量与复写传播
7) Global scheduling
2.3 提高并行性
1) 源语言提供并行性,例如MPI,OpenMP,NESL
2) 循环变换技术:循环合并、循环分布、循环置换、幺模变换、余数变换、 affine partition
3) SPT与value prediction,transaction memory
2.4 存储优化
1) 数据预取
2) 隐藏存储延迟
3) 避免cache代价
4) Loop tiling
5) Array padding
6) Array contraction
7) Code layout
8) Data layout
2.5 运行时优化
1) Post link
2) Code layout
3) 离线优化
4) Java
3 针对体系结构的优化
3.1 数据预取
3.2 指令调度与捆绑
3.3 软件流水与模调度
3.4 结合旋转寄存器的数据预取
3.5 寄存器分配
3.6 If conversion
3.7 数据猜测与控制猜测
3.8 DSWP
4.其他问题
4.1 链接的问题
4.2 二进制兼容
4.3 语言的安全性可靠性
4.4 当前编译和体系结构设计的热点
5.编译GCC和ORC的介绍及应用