基于流处理器集群计算环境研究

VIP免费
3.0 牛悦 2024-11-19 4 4 2.27MB 63 页 15积分
侵权投诉
i
摘 要
随着科学技术进步,人们在计算机硬件技术方面取得到了前所示有的成就。
尤其是在计算机处理器的领域,CPU GPU 的发展速度在有的方面甚至打破了
摩尔定律。以前,GPU 只负责图形计算,CPU 应用于通用计算,两者各司其职。
GPU 中的流体系结构和集成的诸多流处理器的特点为其提供了应用于通用计
算巨大的潜能,最近 GPU 的技术进步促使了显卡厂商终于实现了这一潜能,推出
GPU 的开发环境。结果表明,GPU 在大规模密集型数据,基至海量数据计算
方面已经超过了 CPU 的计算性能。
在高性能计算领域,集群系统是提高计算性能一个重要途径。目前,所有的
集群系统都是基于 CPU依靠 CPU 来计算任务,并且人们在基于 CPU 集群计算
已经取到一些成熟的经验。随着 GPU 巨大计算潜力的成功挖掘,单个的计算机的
计算性能得到很大的提升。
GPU 和集群系统相结合对集群计算整体性能提高的作
用将是不可估量的。
本文是在学习 GPU 知识和集群系统技术方面,尝试设计并实现一个基于 GPU
中流处理器的集群计算系统。文中描述了集群的设计背景,设计框架,并对集群
中的重要模块进行了说明:存储模块使用了轻量级目录服务 LDAP 存储技术;
负载均衡模块中,提出了基于 GPU 剩余流处理器数量的负载均衡技术;在计算节
点性能模块,设计了节点计算能力的函数模型;在计算模块中,利用计算统一设
备架构 CUDA 技术来实现 GPU 上的通用计算。
最后,文章给出一个基于大规模密集型数据计算的实验,并分别运行在本文
设计的基于 GPU 流处理器集群系统和经典的基于 CPU 集群系统,同时对实验结
果进行记录和分析,分析表明,在大规模密集型数据的并行计算方面,基于 GPU
的流处理器集群计算系统比基于 CPU 集群系统的具有更大优势。基于 GPU 集群
计算系统是未来一个非常重要的研究和发展方向。
关键词:流处理器;GPU;统一计算设备架构;集群系统;并行计算;
ii
ABSTRACT
With science and technology progressing, people have made great unprecedented
achievements in the computer hardware technology. Especially the areas of computer
processors, the CPU and GPU development speed have broken Moore's Law in some
ways. Previously, GPUs are only responsible for graphics computing, and CPUs are
used in general-purpose computing, the two types of processor carry out their duties.
However, the characteristics of the current GPU architecture and integration of the too
many stream processors have provided a huge potential that GPU can be applied to
general-purpose compute, with the recent technology being advanced, GPU graphics
card producers finally have realized this potential by launching a GPU development
environment. The results show that, in the repects of intensive large-scale data even the
mass data computing, the GPU performance has exceeded the CPU computing
performance.
In area of the high-performance computing, cluster system is an important way to
improve computing performance. At present, all the cluster systems are based on the
CPU, by relying on CPU to compute the task, and CPU-based cluster computing has
has gained some mature experience. With the great potential of GPU computing being
mined, the computing performance of a single computer has been greatly improved.
By combination of GPU and the cluster computing, improving the cluster system
overall performance will be immeasurable.
This article is based on the GPU knowledge and the technical aspects of cluster
system, then try to design and implement a multi-stream processor GPU-based cluster
computing systems. The article describes the design background, design framework,
and some important modules are described in detail: memory module using the
Lightweight Directory Services LDAP storage technology; in load balancing module, a
new balancing technology is proposed, which is based on the remaining number of
stream processor GPU; in the calculation performance of the node module, designed a
function model of node computing power; in the calculation module, using compute
unified device architecture CUDA to realize general-purpose computing on the GPU.
A experiment based on large-scale data-intensive computing is designed at the end
of paper, and the experiment run on the cluster system based on stream processor of
GPU designed in this article and the classic cluster system based on CPU respectively,
iii
recording and analysis the experimental results at the same time, analysis shows that in
the respect of large-scale data-intensive parallel computing, the GPU-based stream
processor cluster computing systems have a greater advantage than CPU-based cluster
systems. GPU-based cluster computing system is a very important direction of research
and development.
Key Wordstream processor; GPU; CUDA; cluster system; parallel computing;
iv
目录
................................................................................................................................. i
ABSTRACT .....................................................................................................................ii
第一章 绪论 ................................................................................................................. 1
§1.1 课题研究背景....................................................................................................1
§1.2 课题研究现状....................................................................................................1
§1.3 课题来源及意义................................................................................................2
§1.4 论文内容及组织结构........................................................................................3
第二章 流体系结构及流处理器 ................................................................................. 5
§2.1 流相关概念.......................................................................................................5
§2.2 流处理思想.......................................................................................................5
§2.3 流编程模型.......................................................................................................6
§2.4 GPU 中流处理器 ...............................................................................................8
§2.5 GPGPU 介绍 ..................................................................................................... 8
§2.6 CUDA 简介 ..................................................................................................... 10
§2.7 CUDA 编程模型 ............................................................................................. 11
§2.8 CUDA 软件架构 ............................................................................................. 13
§2.9 CUDA 存储器模型 ......................................................................................... 16
§2.10 CUDA 硬件架构 ........................................................................................... 17
第三章 集群技术 ....................................................................................................... 20
§3.1 并行计算.........................................................................................................20
§3.2 集群概述.........................................................................................................22
§3.3 CUDA 中集群技术 ......................................................................................... 23
§3.4 MPI 介绍 ......................................................................................................... 24
§3.5 MPI 实现 ......................................................................................................... 25
第四章 LDAP .............................................................................................................27
§4.1 目录服务.........................................................................................................27
§4.2 X.500 ................................................................................................................28
§4.3 OpenLDAP ...................................................................................................... 29
第五章 基于流处理器集群框架设计 ....................................................................... 32
§5.1 设计背景.........................................................................................................32
§5.2 总体框架.........................................................................................................32
§5.2.1 物理框架...............................................................................................32
§5.2.2 逻辑框架...............................................................................................33
§5.3 通讯网络.........................................................................................................34
§5.4 目录设计.........................................................................................................35
第六章 集群系统各部分资源调度 ........................................................................... 36
§6.1 节点管理.........................................................................................................36
§6.1.1 目录实现...............................................................................................36
§6.1.2 负载均衡...............................................................................................39
§6.2 节点计算.........................................................................................................42
§6.2.1 性能计算................................................................................................42
v
§6.2.2 任务计算................................................................................................42
§6.3 通讯方法.........................................................................................................44
第七章 集群流处理器的核心实现 ........................................................................... 45
§7.1 模型介绍.........................................................................................................45
§7.2 模型 CPU 上的实现 ........................................................................................45
§7.3 模型 GPU 上的实现 ........................................................................................48
§7.3.1 初始化及加载.......................................................................................48
§7.3.2 流处理器的计算...................................................................................48
第八章 集群性能测试与分析 ................................................................................... 51
§8.1 实验环境.........................................................................................................51
§8.1.1 硬件环境................................................................................................51
§8.1.2 软件环境................................................................................................51
§8.2 结果及分析.....................................................................................................51
第九章 总结和展望 ................................................................................................... 54
§9.1 工作总结..........................................................................................................54
§9.2 未来展望..........................................................................................................54
参考文献 .........................................................................................................................56
在读期间公开发表的论文和承担科研项目及取得成 ............................................ 59
.........................................................................................................................60
第一章 绪论
1
第一章 绪论
§1.1 课题研究背景
随着科学和技术的进步,在高性能计算方面,人们对其追求永远止境。在诸
如卫星成像处理、地震数据分析、核爆炸模拟等的科研领域中,数据量规模已经
达到 TB 级,有的甚至高PB 级,面对如此海量数据,没有万亿次以上的高性
能计算能力是无法解决的。在日常的应用中,如 3D 游戏、电影特效、高清视频
等,图形图像编解码及数据计算的复杂度越来越高,同样急需要高性能计算。
目前,实现高性能计算的方式主要有两种:使用高性能微处理器的超级计算
机和采用分布式计算的集群系统。
在高性能处理器方面,计算机中的主流处理器有两个,一个是用于计算机控
制和计算的中央处理器 CPU,另一个是专用于图像处理的图形处理GPU
传统的计算机中,所涉及到的计算大部分都是交给 CPU 处理的,GPU 仅仅只是
用于图形渲染这一块。随着超大规模集成电路 VLSI 技术进步,
CPU 已经可以集
2核、34核等多核处理器,GPU 现在已经集成 240512 个甚至更多的
流处理器成为拥有众核的处理器。在 GPU 中,如何利用如此众多流处理器是现
在技术人员研究的问题之一。
在高性能集群计算方面,超级计算机中的高性能处理器可以加速解决的计算
问题,同样也可以通过多台计算机连接起来协同解决,提高计算性能。目前,
群系统的结构、并行层次、编程模型、环境等各个技术方面已经达到了相对成熟
阶段。同时,它的超高性价比、异构性、可扩展性使其拥有广阔的发展前景。
现在,随着 GPU 技术的发展,在利用 GPU 做图形计算渲染的同时,在将
GPU 中流处理器应用于通用计算已经成为可能。GPU 应用于通用计算称为
GPGPU。第一代的 GPGPU 实现比较复杂,它的实现要依DirectX/OpenGL
图形 API。第二代的 GPGPU,显卡的厂商 NVIDIA 对此做很大的改进,推出了
CUDA不需要借助图形 API 就可以直接访问 GPU方便实现 GPU 的通用计算。
人们已经在集群计算面,取得相对成熟的经验,但多数的集群系统都是基于
CPU即用 CPU 做通用计算。如果将业已实现通用计算的 GPU 应用在集群系统
中,结果会产生什么火花,这将是一个新的研究方向,新的技术发展空间,全新
的领域。
§1.2 课题研究现状
提升处理器计算能力,提高处理器主频的重要的方式之一,但是受材料、
摘要:

i摘要随着科学技术进步,人们在计算机硬件技术方面取得到了前所示有的成就。尤其是在计算机处理器的领域,CPU和GPU的发展速度在有的方面甚至打破了摩尔定律。以前,GPU只负责图形计算,CPU应用于通用计算,两者各司其职。但GPU中的流体系结构和集成的诸多流处理器的特点为其提供了应用于通用计算巨大的潜能,最近GPU的技术进步促使了显卡厂商终于实现了这一潜能,推出了GPU的开发环境。结果表明,GPU在大规模密集型数据,基至海量数据计算方面已经超过了CPU的计算性能。在高性能计算领域,集群系统是提高计算性能一个重要途径。目前,所有的集群系统都是基于CPU,依靠CPU来计算任务,并且人们在基于CPU集群...

展开>> 收起<<
基于流处理器集群计算环境研究.pdf

共63页,预览7页

还剩页未读, 继续阅读

作者:牛悦 分类:高等教育资料 价格:15积分 属性:63 页 大小:2.27MB 格式:PDF 时间:2024-11-19

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 63
客服
关注