论文摘要
人类面临的许许多多重要科技问题的数据规模已经达到TB甚至PB量级,往往需要万亿次以上的计算能力。我们日常生活应用中(如游戏、高清视频播放)面临的图形和数据计算也越来越复杂,对计算速度提出了严峻的挑战。过去二十年,Intel和AMD等厂家推出的CPU的性能提高速度越来越慢,CPU向多核方向发展也存在多方面的问题。NVIDIA公司的支持CUDA技术的GPU因为具有更多的执行单元数量和便利的开发条件,在高性能计算方面具有无可比拟的优势。借助网络把多个GPU连接起来紧密协作而形成GPU集群更是满足需求日益增长的高性能计算的明智选择。结合GPU程序计算的特点,探讨了一种综合分层式调度和集中式调度的GPU集群调度管理系统的设计方案,具体阐述了方案的层次结构,系统的工作流程,各个模块的设计思路和模块之间的交互等。该系统方案的目的是在多机器多GPU的高密度计算中充分利用GPU资源,有效组织GPU执行计算任务,保证在GPU数量线性增长的情况下系统总体计算能力也作线性增长。为了验证调度管理方案的可行性,接着设计了某种哈希算法,在一定的硬件软件和网络通信接口的平台上,对调度管理系统的设计方案进行实验。在实验中,还根据具体的计算任务做了相应的计算优化,结果表明,系统具有高效性、良好的可扩展性、友好的可操作性。在实验的基础上,为了优化系统的性能,还列举了一些可能影响系统性能的因素,然后修改了系统的部分参数对系统性能进行了简单的测试。结合理论分析和参数修改前后的测试结果,可以验证列举的因素的影响作用。最后针对实验结果提出设计方案下一步的工作方向,希望能够提升系统的容错性和故障恢复能力,以及集群调度管理系统适应多种类的计算方式的能力。
论文目录
摘要Abstract目录1 绪论1.1 引言1.2 国内外研究现状1.3 本文主要内容及章节安排2 CUDA 编程技术简介2.1 基于主机和设备的编程模型2.2 内核函数与线程结构2.3 编程模型与底层硬件的关系2.4 本章小结3 集群调度管理简介3.1 集群任务调度问题的分类3.2 集群任务调度的组织结构3.3 集群资源管理的过程3.4 集群调度任务的选择3.5. 集群任务分配算法概述3.6 基于表调度的静态调度算法3.7 集群调度管理的负载平衡问题3.8 集群调度管理的性能评价3.9 本章小结4 GPU 集群调度管理系统的设计方案4.1 调度管理系统的设计原则4.2 调度管理系统的整体设计4.3 调度管理系统的调度层次4.4 分发服务器的调度原理4.5 工作集群的逻辑结构4.6 工作集群的任务划分4.7 服务器程序和客户端程序的交互方式4.8 工作集群的适应性问题4.9 工作集群的外部操作4.10 GPU 内部的计算任务调度4.11 本章小结5 集群调度管理系统对某种哈希算法的实验5.1 实验的硬件软件环境5.2 网络通信接口的选择5.3 实验的算法介绍5.4 实验过程5.5 工作集群的 CPU 协同计算5.6 工作集群的计算能力与 CPU 的比较5.7 集群中 GPU 数量与计算时间的关系5.8 本章小结6 关于系统性能的讨论和实验测试结果6.1 block 和 thread 数量对 GPU 程序性能的影响6.2 工作集群中客户端数量的限制6.3 客户端程序突然崩溃的处理6.4 本章小结7 全文总结与展望7.1 全文总结7.2 下一步工作展望致谢参考文献
相关论文文献
标签:图形处理单元论文; 集群论文; 高密度计算论文; 调度管理论文; 高效性论文; 扩展性论文; 可操作性论文;