并行计算的研究与探析
作者:方富贵
来源:《科技创新导报》2011年第27
        :计算科学的发展使得计算科学已经与传统的理论科学实验科学并列成为推动科技发展和社会文明进步的三大科学。同时,并行计算作为一种研究的工具,也逐渐融入到传统的理论科学实验科学中,本文首先介绍了并行计算,其次对并行计算的新的研究方向NOW的技术做了重点阐述,最后探讨了并行计算的未来发展趋势。
        关键词:并行计算高性能NOW并行编程
        中图分类号:TP33 文献标识码:A 文章编号:1674-098X(2011)09(c)-0056-02
       
        进程间通信实验创建和应用并行计算的主要原因是因为并行计算是解决单处理器速度瓶颈的最好方法之一,而并行计算的硬件平台是并行计算机,它由一组处理单元组成,这组处理单元通过相互之间的通信与协作,以更快的速度共同完成一项大规模的计算任务。
        近几年来,世界上和我国高性能并行计算机的发展取得长足进展。每秒数百亿次、数千亿次乃至数万亿次计算能力的高端并行机已相继研制成功,使得以前许多无法求解和研究的问题现在已经成为可能,尤其是高性能并行计算有待于进一步研究和讨论。
       
        1 并行计算高性能并行计算的研究
        1.1 高性能计算机计算和网格计算
        高性能计算的主要手段和发展趋势是机计算和网格计算。机系统的体系结构如图1所示:
        它由一组称为结点的PC或工作站互联构成。每一个结点有自己的存储器、I/O设备和操作系统,不同结点可以是同构或异构的(硬件和操作系统),机中间件向用户提供统一、灵活、透明、协调、安全的并行编程环境和并行运行环境,机系统的全部软硬件资源属于该系统所有者,一般分布在一间实验室或一栋大楼内,机系统虽然投资大,但可以充分获得可用性并保证安全性,网络系统投资小,但可用性差,安全性难以保障,利用Internet构成
服务网格和数据网格系统。较之计算网格,具有更好的前景,网格计算只适用于非常关键性计算任务,机计算和网格计算,必须解决的问题有:
        ①向用户提供单一的系统映象,使机计算和网格计算系统像单一主机一样使用。如何分解任务。各结点的任务如何通讯和协调,通讯的效率。任务如何适应结点的环境和速度。个别结点失效时任务恢复,加入新结点的灵活性。任务动态调度是迁移。对于网格计算,结点和网络均非用户所有,如何保证安全性是至关重要的,包括任务安全、结点安全、网络安全。下面我们介绍这些问题主要涉及的高速网络和系统软件两个方面。
        1.2 用并行计算对高速网络的实现
        伴随着数字化的进程,数据的处理、存储和传输得到了飞速的发展。高带宽的需求使得短距互联成了系统发展的瓶颈。受损耗和串扰等因素的影响,基于铜线的电互联的高带宽情况下的传输距离受到了限制,成本也随之上升。而且过多的电缆也会增加系统的重量和布线的复杂度。与电互连相比,基于多模光纤的光互连具有高带宽、低损耗、无串扰和匹配及电磁兼容等问题,而开始广泛地应用于机柜间、框架间和板间的高速互连。
        并行光互连通过多根光线并行传输,可以在高比特率的速率下实现较远距离的传输,这就是为何采用并行光互连的一个原因。
       
        2并行计算研究的一个新方向—NOW
        2.1 NOW的关键技术及实现目标
        对于NOW,其关键技术在于网络通信技术以及全局资源的协调管理技术(包括处理器、内存、磁盘等)。快速的网络通信配合以一个全局操作系统层,就可为NOW的用户提供一个巨大的网络资源共享库,满足不同的应用需要。
        通信技术的目标是,实现一个可扩展的高带宽,低延迟的网络系统,以及一个低开销的网络接口。Culler等人提出的LogP模型指出,计算机系统的通信性能不仅取决于传输带宽,还决定于通信开销及网络延迟。对于网络延迟来说,虽然MPP路由器比当前的ATM开关具有更小的延迟,但经过一个MPP网需要较多的转发,这使得两者的网络延迟较为接近。然而,NOW获得高性能计算的方式不同于MPP:首先,NOW通过利用网络上的内存来缓存磁盘数据;
其次,利用网络软件磁盘阵列来加速I/O操作;最后,还可以利用网络范围的处理机来对各个计算成分并行地执行,与MPP一开始就要求用户改写程序的方式相比,这种层次化方法显然更为吸引人。
        2.2 NOW当前的研究现状及发展趋势
        NOW当前的研究课题主要有:通信、网络内存、文件系统、全局调度。在通信上,新的开关网络如ATM的产生使NOW的技术成为可能,但是对于小消息而言,传递延迟还是相当可观的。在虚拟内存方面,Berkeley的合作内存思想是较好的想法,在这方面的工作大都相当于DSM的工作。在DSM方面的关键问题是要依赖于通信问题的解决,因发明家大多数DSMNOW环境下的特点在于解决通信问题,使用主动式消息的方法和细粒度控制。在文件系统方面,Berkeley的软件RAIM实现了各个节点对磁盘任意存取的无服务器网络文件系统Xfs,突出体现了文件系统使用大容量内存的优势。在处理机调度方面,BerkeleyNOW利用一个有效搜寻空闲资源机制及快速迁移功能,不仅为交互式应用提供一个专用的单处理机工作站以保证快速响就,而且为大型并行应用项目提供类似一个专用”MPP的性能。
        但综上所述,NOW的研究方向兴未艾,其技术还不成熟,对这些问题的研究仍是以后
工作的重点。
       
        3并行计算的新挑战
        3.1 以多核为主流的体系结构
        最近几年来,随着芯片集成规模极限的逼近,以及能耗和成本的因素,具有多核结构的产品逐渐成为市场的主流。
        所谓多核技术即在同一个处理器中集成两个或多个完整的计算内核,每个计算内核实质上都是一个相对简单的微处理器,多个计算内核可以并行地执行指令,从而实现一个芯片内的线程级并行,并可在特定的时间内执行更多的任务实现任务级并行,从而提高计算能力。
        3.2 多核化的并行计算机的逐渐普及
        多核化趋势正在改变并行计算的面貌,跟传统的单核CPU相比,多核CPU带来了更强的并行处理能力、更高的计算密度和更低的时钟频率,并大大减小了散热和功耗。目前,在
几大主要芯片厂商的产品线中,双核、四核甚至八核CPU已经占据主要地位,在将应用从单核环境向多核系统迁移的过程中,通过选择合适的操作系统,应用开发人员可以大大地减少麻烦,与此同时,多核技术的应用也带来了诸多问题。
        首先,多核芯片如何管理共享资源就是一大问题,在大多数情况下,多核CPU的内核拥有独立的缓存,内存子系统,中断子系统和外设,因此,系统需要让每个内核独立访问某种资源,并确保资源不会被其他内核上的应用程序争抢,多核的出现还让系统设计变得更加复杂。其次,就是并行计算机系统的高效能问题。一般来说,人们往往比较关注并行计算机的高性能,但是,随着多核技术和并行计算的发展,高效能计算机被提上了历史日程,通过简单的将许多PC机连接起来构成机系统虽然峰会值很高,但存在着通讯瓶颈,不能认为是高效能的机器。再次,它对并行计算系统的算法和编程带来了很大的困难,程序代码迁移也是个问题。大多数系统厂商都在针对单核CPU架构的代码库上进行了大量投资,因而,这些公司需要有一个清晰的迁移策略,来使其代码可以最大化地利用多核硬件资源,同时为之付出的迁移代价要尽可能的小。
        3.3 趋向普及的并行编程
        对于并行编程的工具环境提出了新的挑战,需要从事并行编程的人员不再是少数高端的科研人员,使得对于并行编程语言,环境、工具的要求也更高。目前的并行应用软件却很难完全发挥多核处理器的性能,从编译器、开发语言、函数库到开发工具,软件并未作好迎接多核的准备,由于编译器和带有标准化接口的库文件存在,程序员们到现在仍然独立于硬件设计之外,更严峻的是,在转向新一代硬件时,程序员需要向多核系统移植现有应用程序,为了充分发挥新设计的优势,程序员必须在应用中提取并明确表述并行性(任务和数据并行性)。为了实现最高的峰值性能利用率,程序员还必须将应用参数化,以就对不同的Cache大小和Cache分级体系,并增加新的代码来获取最佳效果。
        结束语:随着多核系统的普及,桌面应用和移动应用也成为并行计算新兴的重要应用,由于个人计算机和移动设备都具有多个处理单位,使得许多桌面应用和移动设备上的应用也不得不采用并行计算的技术,这对于许多传统桌面应用领域的研究者,以及并行计算的研究者,都是一个新的机遇与挑战。
       
        参考文献
        [1] 陈国良.并行算法的设计与分析[M].北京:高等教育出版社,2002.
        [2] 陈国良.并行计算结构·算法·编程[M].并行计算的硬件基础,2003.
        [3] Grama A,Gupta A,Karypis G,et al.Introduction to parallel computing.Boston: Benjaming/Cummings Publish Company,Inc,2003.
        [4] 胡凯,宋京民,阚志刚.网络计算新技术[M].北京:科学出版社,2001.
        [5] network.chinabyte/95/8991095.shtml.html,2009.
        [6] 李毅,周明天,虞厥邦.基于PVMC++对象分布并行机制的初步研究[J].软件学报,2001,12(2):173—1821.
        [7] Chen G l,Sun G Z,Zhang Y Q,et al.Study on parallel computing,J Comput Sci Tech.2006,21(5):655—673.
        [8] 陈波,韩永国,刘志勤.高性能并行计算的研究与分析[J].西南科技大学计算机学院学报,2003.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。