基于PC机群的多点源高斯大气污染扩散模型的并行计算研究_第1页
基于PC机群的多点源高斯大气污染扩散模型的并行计算研究_第2页
基于PC机群的多点源高斯大气污染扩散模型的并行计算研究_第3页
基于PC机群的多点源高斯大气污染扩散模型的并行计算研究_第4页
基于PC机群的多点源高斯大气污染扩散模型的并行计算研究_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、高技术通讯年第卷第期:基于机群的多点源高斯大气污染扩散模型的并行计算研究胡亚倡倡倡倡林珲徐丙立朱军胡明远倡倡倡倡倡倡倡(西南交通大学土木工程学院测量工程系,成都)(倡倡香港中文大学太空与地球信息科学研究所,香港)摘要针对基于单机的多点源高斯大气污染扩散模型计算效率较低的问题,设计了高斯模型并行算法,该算法是基于计算输出层设计的,它将计算输出层尽量平均地分配到各个计算节点上。针对并行算法,构建了分布式并行计算平台。该平台采用三层分布式体系结构,即用户层、控制层和计算资源层。实验结果表明,基于该算法的高斯并行计算大大提高了模型计算效率,分布系统结构合理,可以为准实时甚至实时的环境管理业务提供支持。

2、关键词个人计算机机群,多点源,高斯污染扩散模型,并行计算根据计算运行平台不同,并行计算主要分成两类:基于大型并行机即超级计算机的运算;基于机群的运算。随着计算机技术的发展,基于机群的并行计算正在逐步取代一部分大型并行机的功能并在高性能计算领域取得领先地位引言高斯模型是一种应用普遍的大气污染扩散公式,可以用来计算污染物扩散均匀后污染源下风向三维空间点的污染浓度值。当污染源个数增多,每个污染源下风向需要计算污染浓度值的空间点个数也很多的情况下,在单机上完成高斯模型污染物浓度计算需要花费很长时间。目前,为了提高大气污染扩散模型计算效率,大都采用并行计算方法,如í利用硅图公司()的图形工作站

3、作为并珘利用计算机网格作为并行计行计算平台,算平台,姚丽萍利用“自强”超级计算机作为并行计算平台,王茜利用高性能计算机系统“曙光”作为并行计算平台。这些已有的工作以“超级计算机”或“高性能计算机”作为并行计算平台取得了较高的计算效率,但是采用“超级计算机”或“高性能计算机”作为计算平台,其计算能力有一定的限制,并且价格昂贵,需要较高的一次性投入,许多单位或机构都不具备这种计算平台。随着计算机技术的普及以及计算机性价比的提高,在许多工作单位中都出现了大量的高性能个人计算机()和由这些机组成的局域网,而这些机在大部分时间里其计算资源都处于空闲状态。针对前述的“超级计算机”计算资源不足而机计算资源空

4、闲这一现状,本文尝试把多点源高斯大气污染扩散模型计算移植到由普通组成的计算机机群上来。本研究的主要工作是以机群作为计算平台,采用并行方法以提高大气污染扩散模型的计算效率,在分析多点源高斯污染迭加模型的基础上,设计了基于计算输出层的并行算法,针对机群对并行分配和计算进行了框架设计和实现,实验表明该算法和系统构建基本合理,能够在一定程度上减少模型计算时间,提高模型的运行效率。多点源高斯迭加模型区域性大气环评高斯迭加模式是由烟气抬升公式和各类源的高斯扩散公式组成,多源模式一般只考虑点源与点源、点源与面源的迭加。多点源高斯迭加模型如下:(,)(,)其中:,×()()计划(,)和香港特区研究资

5、助局基金()资助项目。男,年生,硕士,讲师;研究方向:与虚拟地理环境;联系人,:(收稿日期:)胡亚等:基于机群的多点源高斯大气污染扩散模型的并行计算研究在式()中,(,)为个污染源对空间点(,)的污染浓度值迭加,(,)为空间点在固定坐标系(固定坐标系中,轴指向东,轴指向北)中的坐标表示,为污染源的个数,(,)为第个污染源在空间点(,)处的污染浓度值。在式()中,(,)为第个污染源对其下风向上空间点(,)处的空气污染浓度()。这里的(,)为空间点(,)在风向坐标系(风向坐标系的坐标原点为第个污染源所在的位置,轴方向为风向方向,轴与轴形成右手坐标系)里面的坐标表示。为下风向距离(),为横截风向距离

6、();为距地面高度();为污染物源强,即释放率();为排气口处的平均风速();、分别为水平方向和垂直方向扩散参数(),它们是下风向距离及大气稳定度的函数;为污染源有效排放高度。图基于机群的并行计算的三层体系结构计算节点是由局域网内的计算机组成的计算机群,它主要负责对分配的任务进行计算。并行计算控制端装配有并行算法,它负责任务的划分与分配以及计算结果的汇总。并行计算请求端也是系统的客户端,主要生成高斯模型的初始参数。并行计算的步骤为:()在并行计算请求端发起计算请求之前,参与并行计算的计算节点应先与并行计算控制端建立连接以形成计算节点序列;()并行计算请求端向并行计算控制端发起计算请求,当请求获

7、得通过之后,并行计算请求端向控制端发送与计算相关的参数和数据文件;()当控制端接收到从并行计算请求端发送过来的参数与数据文件之后,根据并行算法计算各计算节点应该计算的污染层,并向各计算节点发送相应的参数和数据文件;()当计算节点接收到与计算相关的参数和数据文件之后,利用前述公式()、()计算分配到的空间点污染浓度值;()当计算完所有分配到的空间点污染浓度值后,把各空间点的位置数据以及污染浓度数据写入文件形成结果文件,然后把结果文件传送给控制端;()控制端接收各计算节点发送过来的结果文件,并把结果文件发送给并行计算请求端;()并行计算请求端接收控制端发送过来的结果文件。当接收完所有的结果文件后,

8、整个并行计算结束。以上的过程可以用图表示。基于机群的并行计算用于并行计算的机群系统主要有两类:共享存储的机群系统(如超级计算机机群)和分布式存储的机群系统。机群就是一种基于分布式存储器的多机系统,它由多台同构或异构的普通计算机组成,并通过网络进行连接。目前,在我国,很少有单位拥有一台或多台超级计算机,而拥有多台机的单位已经十分普遍,本文正是基于这种现状而展开研究工作的。本节首先设计了并行计算的体系结构及流程,然后详细介绍了本文所采用的并行算法,最后讨论了并行计算中的网络通信等问题。并行计算总体框架基于机群的并行计算以网络为通信媒介,采用三层体系结构,如图所示。在图中,从右至左分别为并行计算请求

9、端、并行计算控制端和计算节点序列端。并行计算请求端、计算节点序列端都通过局域网与并行计算控制端进行连接。图基于机群的并行计算流程高技术通讯年月第卷第期基于污染层的并行算法基于多点源高斯迭加模型的并行计算可以采用如下三种方法:()针对污染源并行:认为一个计算点的浓度是多个污染源的叠加贡献,如果参与计算的污染源很多,可以把污染源分配到各个计算节点上去,让每个节点只计算少量污染源对计算点的浓度分量,最后把各个浓度分量叠加得到所有污染源对计算点的浓度。()针对计算点并行:如果要求计算浓度的计算点数量很多,可以把计算点分配到各个计算节点上去,让各个节点只计算所有污染源对少量计算点的浓度。()针对计算点及

10、污染源的并行:如果参与计算的污染源和计算点都很多,并且能够参与并行计算的计算节点也足够多时,可以结合()、()两种并行方法以进一步提高模型计算效率。本文由于要求计算浓度的计算点数量很多,并且能够参与并行计算的计算节点数量有一定的限制,所以采用针对计算点的并行方法。计算点的分配可以根据需要按任意方式进行,这里采用按层的方式进行。具体的并行算法如下所述。设污染区域有层,每层采用相同的划分方式,即在轴方向上有个格点,在轴方向上有个格点。污染区域的设置如图所示。图污染区域设置假设参与并行计算的计算节点数为。为了让各个计算节点的计算量均衡,针对污染层的并行算法是让每个计算节点需要计算的污染层数尽可能相等

11、。具体算法如下:首先,可以计算每个计算节点至少可以分配到的污染层数为()()。如果计算节点数不能整除,则有,规定编号小的计算节点可以分得更多的层,这些计算节点将分得层。这样就可以得到编号为(计算节点的编号从开始)的计算节点分得的层数:()()例如,假设参与并行计算的计算节点数为,需要计算的污染层数为,则每个计算节点至少可以分配到的污染层数()()。由于计算节点数不能整除污染层数,此时剩余的污染层数。根据上述并行算法,第一台计算节点(编号为)、第二台计算节点(编号为),由于编号均小于剩余的污染层数,它们分配到的污染层数为;第三台计算节点(编号为),由于编号与剩余的污染层数相等,所以它分配到的污染

12、层数为。通过上述的基于污染层的并行算法,各计算节点计算的污染层数相差最大的为层,可以最大限度地平衡计算节点间的计算负荷,有利于整个并行计算尽快结束。当计算机数量增加时,计算时间将减少。当计算机数量达到和层数相同时,计算时间最小。但是当计算机数量超过计算层数时,计算时间将不再减少,增加的计算机将造成浪费。网络通信并行计算中的网络通信通常采用如下三种方式:()利用并行计算平台,如消息传递接口(,)、并行虚拟机(信。这种方法适合于大型,),实现计算机之间的网络通、复杂的并行计算,多用于操作系统。()借助于专门的软件实现计算机之间的网络通信。如在计算流体力学领域里广泛使用的并行计算软件需借助于专业远程

13、服务软件。这种方法适用于某些特定领域。实现()利用网络编程实现计算机之间的通信。这种方法适用于并行流程比较简单的并行计算。胡亚等:基于机群的多点源高斯大气污染扩散模型的并行计算研究本文的并行计算其并行流程比较简单,所以计算机之间的网络通信编程采用标准网络编程实现。本文采,借助用程序实现计算机之间的通信平台的强大网络通信开发环境于。,编写由于各计算节点只计算分配给它的污染层的污染浓度值,计算节点之间没有联系,所以网络通信只在并行计算请求端与并行计算控制端、并行计算控制端与计算节点之间进行。在计算节点开始计算之前,网络通信的方向是:并行计算请求端控制端计算节点,传输与计算相关的参数与文件,即高斯模

14、型计算参数、选择的污染源数据等。在计算节点完成计算之后,网络通信方向是:计算节点控制端并行计算请求端,传输结果文件与相关的控制命令等。并行测试与分析根据上述方案,采用语言在平台上编写并行计算的个程序,即并行计算请求端程序、并行计算控制端程序、计算节点端程序。并行计算请求端程序运行界面如图所示,控制端与计算节点端程序运行界面省略。在图中,左边为高斯模型部分参数设置区域,右边的列表为参与并行计算的计算节点序列。图并行计算请求端程序运行界面并行计系列,算其处理器为因特尔双核中,计算节点端的硬件环境为,存为,操作系统为;并行计算采用内的局域网网速为,在该局域网内传输文件的速度大约为。实验区域为珠江三角

15、洲,区域内的点污染源分布(共个)。本次并行计算选择的空间点分布如图所示。其中,空间点平面位置分布在红线框范围内,其个数的表现形式为××(是方向上空间点的层数);同一层之间,空间点与空间点的方向间距、方向间距为。基于上述硬件和实验数据,图是并行计算用时与计算节点关系测试结果。图实验区域污染源分布及空间点分布区域图并行计算用时与计算节点关系测试结果图中的计算时间是由图中整个并行计算流程的用时所组成,包括模型计算时间和数据在网络上的传输时间。从图中的测试结果可以看出,当使用台并行节点时,计算能够在内完成,大大缩短了模型计算所需要的时间,这说明基于机群的多点源高斯大气污染扩散模型的

16、并行计算可以提高模型的计算效率。测试结果同时表明,随着计算节点的增加,虽然在并行计算控制端与计算节点端的通信量会增加(每增加一个计算节点,只会多增加一次网络通信,即从并行计算控制端向并行计算节点端传输的与计算相关的初始参数信息,而在其它地方没有再增加网络通信。对于本文所采用的实验数据,每增加一个计算节点,需要增加约网络通信量,这对于每秒能传输大约文件大小的网络速度,增加的网络通信时间大约为),但增加的通信主要在高速的局域网内完成,通信增加的时间远小于并行计算减少的时间,甚至可以忽略不计,所以并行计算完成的时间会随着计算节点的增加而进一步减少。针对本次计算选择高技术通讯年月第卷第期的空间点数量,

17、如果参与计算的计算节点足够多(如超过个计算节点),并行计算完成的最短时间应约等于在本地计算完成一层空间点(即××)的计算时间与并行计算网络通信时间(每增加一个计算节点,针对本文所采用的实验数据,增加的网络通信时间大约是。由于增加的通信时间很少,所以这里认为并行计算网络通信时间与计算节点的数量没有关系,大约为左右)之和,即。为了验证计算结果的正确性,对并行计算结果的第层(空间点距地面高)进行了可视化,见图。可视化采用二次开发平台实现。从图中可以看出,污染浓度分布符合高斯形态,浓度渐变(颜色黑的地方代表污染浓度高)方向与风向一致(模型计算时,风向与轴逆时针方向形成度)。果表明,

18、本文所采用的技术路线大大提高了模型的计算效率,缩短了模型计算完成的时间,可以为准实时甚至实时的环境管理业务提供支持。()本文使用的大气污染扩散模型是较为简单的多点源高斯迭加模型,但就其实现过程而言,可以推广到更为复杂的大气污染计算模式,进而可以有效解决环境管理业务对大气污染扩散模拟提出的效率需求。()随着时间的推移,机的性价比会进一步的提高,机的计算能力会进一步增强,许多单位都会拥有更多更高性能的机。因此,本文所采用的技术体系会更适合于没有超级计算机或超级计算机资源紧张而又需要快速完成大量计算的单位或组织。当然,基于机群的并行计算需要编写较多的程序代码,尤其是需要对网络编程比较熟悉。参考文献魏振钢,郭遵强,张琳等基于高斯模式的大气污染模型的应用中国海洋大学学报,():姚丽萍,王远飞基于的大气污染扩散模型的并行计算研究计算机工程,():í,():珘,í,á,():王茜,张法,邱振戈城市小区气象污染扩散并行算法优化高性能计算发展与应用,():谢晓东,王勇,王

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论