
论文摘要
异构多核处理器是当前产业界和学术界的研究热点。Cell作为现代异构多核处理器的典型代表,其主处理器与协处理器各司其职的独特设计思想受到了业界的广泛关注。它优良的工作性能也在PS3游戏机和一些富媒体消费电子设备上得到了充分的体现。然而如何将这种体系结构应用到科学计算程序上来为科研服务,目前还处于研究探索阶段。本文选取SPECfp2006中的浮点基准测试程序LBM,研究科学计算程序在Cell异构多核处理器上的移植和性能优化方法,同时评估Cell处理器的科学计算处理能力。本文的主要工作有五个方面:一是研究了Cell处理器的硬件结构特点和编程环境。二是对LBM基准程序的数据布局与实现原理进行了分析研究,并根据Cell处理器的特点对LBM移植后在PPE和SPE上的任务进行了划分。三是为实现LBM程序的移植设计了一种新的编程模式,并在这个模式的基础上分别对PPE和SPE上的代码进行了移植。四是通过对SPE上的代码使用SIMD向量构造技术和双缓冲技术进行优化,来实现Cell处理器最佳处理性能。五是对移植后的LBM程序的性能进行了测试,并与在X86处理器上运行时的性能进行了对比分析。经过我们对测试结果的分析,LBM在Cell处理器上能获得较好的性能,说明了Cell处理器具备了较强的科学计算能力。
论文目录
摘要ABSTRACT第一章 绪论1.1 课题背景1.1.1 异构多核处理器的发展1.1.2 CELL处理器的影响1.2 研究现状1.2.1 Cell处理器的编程支持1.2.2 Cell处理器的应用开发1.3 主要工作和创新1.4 本文结构第二章 Cell处理器与编程环境2.1 概述2.1.1 Cell在处理器性能上的三大突破2.2 Cell处理器的结构2.2.1 PPE处理器2.2.2 SPE处理器2.2.3 EIB环状总线2.3 Cell处理器的编程环境2.3.1 PPE指令集2.3.2 SPU指令集2.3.3 存储域2.3.4 SIMD向量化2.3.5 DMA传输和处理器之间的通讯第三章 LBM的原理和算法3.1 LBM 的原理3.1.1 格子—玻尔兹曼方法简介3.1.2 LBM的数学原理3.1.3 LBM方法的物理模型3.2 LBM算法的C语言实现3.2.1 数据布局3.2.2 数据初始化3.2.3 LBM程序主要函数及功能说明3.2.4 LBM程序执行流程图第四章 LBM算法在Cell处理器上的实现和优化4.1 程序任务的划分4.1.1 主要依据和原则4.1.2 LBM的函数执行性能分析4.1.3 LBM在Cell处理器上的任务划分4.2 LBM在Cell上的编程模式4.2.1 Cell上的几种主要的程序设计模型介绍4.2.2 双并行编程模式在LBM程序中的应用4.3 PPE上代码的移植4.3.1 计算任务分配4.3.2 SPE线程的创建4.3.3 邮箱指令的发送与接收4.3.4 多线程同步的控制与实现4.4 SPE上代码的移植4.4.1 模块主体结构设计4.4.2 数据缓冲区设置4.4.3 指令控制模块的实现4.4.4 DMA传输功能的实现4.5 SPE上代码的优化4.5.1 SIMD向量优化4.5.2 双缓冲优化第五章 测试结果及性能评测5.1 测试环境5.2 测试结果及分析5.2.1 程序移植的正确性验证5.2.2 SPE代码的优化效果验证5.2.3 与X86处理器的执行性能对比5.2.4 归纳和总结第六章 结束语6.1 工作总结6.2 展望致谢参考文献作者在学期间取得的学术成果
相关论文文献
标签:处理器论文; 科学计算程序论文; 实现论文; 优化论文;