多核环境下面向数据并行编程模型的性能和可伸缩性研究
发布时间:2024-11-14 20:05
近10年来对于大规模数据处理的需求变的日益迫切,等待处理的数据如雪崩一般不断增长。据权威咨询公司IDC于2007年统计,截至2006年存储于电子介质中的数据量达到惊人的161艾字节(Exabyte),并且预计至2010年这一数字将来到998艾字节。毫无疑问数据密集型应用已经成为当今最为重要的计算机应用之一。 与此同时,随着多核技术的日益普及,片上核数目的快速增长,多核平台在大规模数据处理领域呈现出极为广阔的应用前景。然而这些以多核形式提供的强大计算能力,只有通过并行程序才能得以充分利用,发挥出与核数目的增长一致的实际效果。高效并行程序的编写历来是困扰程序员的难题,因为除了业务逻辑本身,程序员还必须面对包括数据分布、可伸缩性、负载平衡和系统容错在内的大量与并行性相关的复杂问题。权威调研机构Gartner于2008年列出了未来25年IT市场面临的七大挑战,多核时代的并行编程位居第二。 面向数据并行编程模型无疑是这一挑战的最好解答,通过合理的抽象向应用程序员隐藏并行性相关问题,在将业务逻辑开发留给应用程序员的同时,将实现并行的挑战留给并行计算专家。然而现有的面向数据并行编程模型和运...
【文章页数】:132 页
【学位级别】:博士
【文章目录】:
目录
摘要
Abstract
第一章 绪论
1.1 多核平台
1.2 面向数据并行编程模型
1.2.1 面向数据并行编程模型
1.2.2 多核平台带来的挑战
1.3 相关研究
1.3.1 多核平台
1.3.2 面向数据并行编程模型
1.4 本文的主要贡献
1.4.1 之前研究工作的不足
1.4.2 本文的主要贡献
1.5 本文结构安排
第二章 基于分治策略的MapReduce模型扩展
2.1 背景知识
2.1.1 MapReduce并行编程模型
2.1.2 Phoenix多核运行时环境
2.1.3 分治策略
2.2 MapReduce模型在多核平台上存在的主要问题
2.3 分治MapReduce并行编程模型
2.3.1 模型设计
2.3.2 运行时实现
2.3.3 执行流程
2.3.4 容错支持
2.4 小结
第三章 分治MapReduce模型的运行时优化
3.1 内存负载优化
3.1.1 现有实现分析
3.1.2 输入缓冲区重用技术
3.2 缓存局部性优化
3.2.1 现有实现分析
3.2.2 背景知识
3.2.3 面向非一致缓存/内存访问调度器
3.3 任务并行性优化
3.3.1 现有实现分析
3.3.2 软件流水线技术
3.3.3 任务窃取调度
3.4 小结
第四章 分治MapReduce模型和实现的评测
4.1 评测环境和方法
4.1.1 评测环境
4.1.2 测试用例
4.2 易用性评测
4.3 性能和可伸缩性评测
4.3.1 整体性能
4.3.2 可伸缩性
4.3.3 内存资源消耗
4.3.4 缓存局部性
4.3.5 任务并行性
4.4 容错技术评测
4.4.1 性能开销
4.4.2 存储开销
4.4.3 容错恢复
4.5 小结
第五章 分治MapReduce模型对应用的支持
5.1 案例一:在线聚集计算
5.1.1 在线聚集计算简介
5.1.2 HOP在线聚集系统
5.1.3 Oops在线聚集系统
5.1.4 评测
5.2 案例二:增量计算
5.2.1 增量计算简介
5.2.2 DryadInc增量计算系统
5.2.3 OstrichInc增量计算系统
5.2.4 评测
5.3 小结
第六章 总结与展望
6.1 工作总结
6.2 工作展望
6.2.1 软件栈各层优化支持
6.2.2 虚拟化环境优化研究
6.2.3 异构平台支持研究
6.2.4 更多应用领域和计算需求的支持
参考文献
发表文章目录
致谢
本文编号:4012048
【文章页数】:132 页
【学位级别】:博士
【文章目录】:
目录
摘要
Abstract
第一章 绪论
1.1 多核平台
1.2 面向数据并行编程模型
1.2.1 面向数据并行编程模型
1.2.2 多核平台带来的挑战
1.3 相关研究
1.3.1 多核平台
1.3.2 面向数据并行编程模型
1.4 本文的主要贡献
1.4.1 之前研究工作的不足
1.4.2 本文的主要贡献
1.5 本文结构安排
第二章 基于分治策略的MapReduce模型扩展
2.1 背景知识
2.1.1 MapReduce并行编程模型
2.1.2 Phoenix多核运行时环境
2.1.3 分治策略
2.2 MapReduce模型在多核平台上存在的主要问题
2.3 分治MapReduce并行编程模型
2.3.1 模型设计
2.3.2 运行时实现
2.3.3 执行流程
2.3.4 容错支持
2.4 小结
第三章 分治MapReduce模型的运行时优化
3.1 内存负载优化
3.1.1 现有实现分析
3.1.2 输入缓冲区重用技术
3.2 缓存局部性优化
3.2.1 现有实现分析
3.2.2 背景知识
3.2.3 面向非一致缓存/内存访问调度器
3.3 任务并行性优化
3.3.1 现有实现分析
3.3.2 软件流水线技术
3.3.3 任务窃取调度
3.4 小结
第四章 分治MapReduce模型和实现的评测
4.1 评测环境和方法
4.1.1 评测环境
4.1.2 测试用例
4.2 易用性评测
4.3 性能和可伸缩性评测
4.3.1 整体性能
4.3.2 可伸缩性
4.3.3 内存资源消耗
4.3.4 缓存局部性
4.3.5 任务并行性
4.4 容错技术评测
4.4.1 性能开销
4.4.2 存储开销
4.4.3 容错恢复
4.5 小结
第五章 分治MapReduce模型对应用的支持
5.1 案例一:在线聚集计算
5.1.1 在线聚集计算简介
5.1.2 HOP在线聚集系统
5.1.3 Oops在线聚集系统
5.1.4 评测
5.2 案例二:增量计算
5.2.1 增量计算简介
5.2.2 DryadInc增量计算系统
5.2.3 OstrichInc增量计算系统
5.2.4 评测
5.3 小结
第六章 总结与展望
6.1 工作总结
6.2 工作展望
6.2.1 软件栈各层优化支持
6.2.2 虚拟化环境优化研究
6.2.3 异构平台支持研究
6.2.4 更多应用领域和计算需求的支持
参考文献
发表文章目录
致谢
本文编号:4012048
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/4012048.html
上一篇:同构众核处理器的片上存储管理与同步机制研究
下一篇:没有了
下一篇:没有了