声明
摘要
第1章 绪论
1.1 研究背景
1.1.1.神威·太湖之光
1.1.2.传统编程模型在神威·太湖之光上面临的挑战
1.1.3.数据流模型
1.2 论文研究目标和主要工作
1.3 论文结构
第2章 相关研究工作
2.1 现有的若干基于数据流的编程模型
2.1.1.SWARM
2.1.2.Charm++
2.1.3.TensorFlow
2.2 Codelet程序执行模型
2.2.1.基本单元
2.2.2.激发规则
2.2.5.抽象机器模型
2.3 DARTS运行时系统
2.3.1.运行时系统的实现
2.3.2.实例研究
2.4 本章小结
第3章 SunwayFlow:神威·太湖之光上的一种数据流编程模型
3.1 机器模型的抽象
3.1.1.单核组单SU方案
3.1.2.单核组多SU方案
3.1.3.本文采取的映射方案
3.2 程序执行模型的设计
3.2.1.去除TP结构
3.2.2.预激发状态
3.3 编程接口
3.3.1.Runhme类
3.3.2.SchedulingUint类
3.3.3.ComputeUnit类
3.3.4.Codelet类
3.3.5.本节小结
3.4 本章小结
第4章 SunwayFlow运行时系统的设计与实现
4.1 运行机制
4.1.1.Codelet状态转换
4.1.2.SU和CU的协作模式
4.1.3.CU运行机制
4.1.4.数据移动
4.2 关键技术
4.2.1.状态变量倍增
4.2.2.ID池
4.2.3.就绪codelet队列
4.2.4.任务分配与执行
4.2.5.资源释放与调度管理
4.2.6.SU优先模式
4.2.7.虚拟CU模式
4.3 本章小结
第5章 实例研究
5.1 HPCG概述
5.2 强数据依赖的核心计算函数优化
5.2.1.SymGS算法简述
5.2.3.数据流优化方法
5.2.4.实验结果分析
5.3 无数据依赖的核心计算函数优化
5.3.1.SPMV优化
5.3.2.DDOT和WAXPBY优化
5.4 HPCG整体性能测试分析
5.4.1.串行版本性能测试分析
5.4.2.MPI版本性能二测试分析
5.4.3.本节小结
5.5 本章小结
第6章 全文总结
6.1 研究工作总结
6.2 主要创新点
6.3 未来工作展望
参考文献
致谢
在读期间发表的学术论文与取得的研究成果
在读期间参与的科研项目