毕业设计(论文)一种基于并行遗传算法的机群负载分配调度策略的设计与实现.doc
《毕业设计(论文)一种基于并行遗传算法的机群负载分配调度策略的设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)一种基于并行遗传算法的机群负载分配调度策略的设计与实现.doc(79页珍藏版)》请在三一办公上搜索。
1、一种基于并行遗传算法的机群负载分配调度策略的设计与实现 概述6 1.1并行处理技术的发展6 1.2集群技术概述6 1.3支持软件7 1.4任务分配负载均衡的重要意义8并行系统中的任务分配和负载平衡问题10 2.1任务分配问题的概述10 2.1.1 任务分配的一般描述及影响因素10 2.1.2任务分配问题描述11 2.2负载均衡问题的概述12 2.2.1概述12 2.2.2负载平衡问题描述13 2.3现有任务分配及负载均衡算法及其优缺点评述14 2.3.1基于图论的分配策略14 2.3.2 01程序设计策略16 2.3.3 “合一阈值”启发式分配算法17第三章一种新的基于并行遗传算法的策略提出及
2、可行性分析19 3.1遗传算法概述19 3.2遗传算法的结构20 3.3并行化的目的21 3.4并行性分析22 3.5并行算法与并行计算机系统23 3.6并行搜索与最优化25 3.7并行遗传算法形式化地定义29 3.8解决任务的分配与负载均衡问题的优势30算法建模与设计及针对机群应用环境的具体实现32 4.1和任务分配及调度相关的概念32 4.2算法的目标与设计原则34 4.2.1负载均衡算法的目标34 4.2.2负载平衡算法的组成34 4.3 算法的描述及数学模型35 网络应用及其特点39 4.6以PVM为支撑的PC机群环境的概述39 4.6.1 PVM系统概述39 4.7针对机群应用环境的
3、具体设计与实现46 4.7.1相关问题及解决46 4.7.2 虚拟服务器技术及其优缺点46 4.7.3一种新的网络服务并行计算模式的提出48 4.7.4PVM中连接重定向技术及其实现原理52 4.7.4PVM中连接重定向技术及其实现原理55 4.7.5在套接口上的实现59 4.4基本算法的设计62 4.5算法的分布并行设计70 4.5.1简单的主从模型:71 4.5.2网络并行模式:74 4.5.3 两级主从模型:74 4.5.3负载均衡策略设计76实验模拟与性能分析79 5.1性能评价与分析概述79 5.2实验环境与测试83结束语84参考文献85 摘要随着计算机和网络技术的迅速发展,用高速网
4、络连接一组工作站或PC机组成并行计算机系统或利用网络已有资源组成高性能计算环境,来解决许多中、大粒度、十分复杂的计算问题变得越来越普及。 采用这种思路建立起来的计算网络是一种可扩展、灵活的、高性价比的分布式并行处理系统,能否充分利用系统的冗余资源和最大限度发挥该系统的潜力,任务的分配和负载的动态调度是主要的影响因素之一,同时也是一个非常困难的问题。十几年间相继提出了许多解决方法,如:基于图论的分配方式及“阈值”合一法等,这些方法各有其有优缺点,但都不是完美的解决方案。 当今,计算机科学各个领域的发展几乎都显示出向并行计算的过渡趋势。人们开始从并行和分布式处理的角度重新探索计算机的各种理论和应用
5、。并行遗传算法的出现,无疑使我们在解决NPC之类问题方面有了新的转机和希望。 遗传算法是一种借鉴生物界自然选择和遗传机制得高度并行、随机、自适应得概率搜索算法,主要用于处理最优化问题和机器学习等方面。而并行遗传算法可以利用并行计算机的优势,将一个遗传算法的程序分配给几个处理机并行以提高程序执行速度,缩短算法执行所需的墙钟时间。 本文提出了一种基于并行遗传算法的任务分配策略,并且设计了自适应的负载均衡算法,针对PVM系统进行了模拟和实验,同时,还针对PVM在网络应用方面的弱点,采用了底层封装的方法,为PVM系统补充了一个调用库,使得算法能够根据不同的应用类型选择不同的调度方法来实现负载的平衡。并
6、且对算法进行性能分析和应用示例实际测试,达到预期的效果。 最后,对这方面的研究作了总结并为进一步的研究工作提出一些看法。关键字:分布式并行处理,并行遗传算法,机群,集群,并行虚拟机,任务分配,负载平衡 ABSTRACTWith the rapid progress of the network and computer technologies,it is becoming moreand more popular to combine a group of workstations or microcomputers into a distributed parallel Computati
7、on system with high speed network or build a high performance computing enviroment With the existing resource in order to resovle these media granularity complexity application Problems. This computing network is a kind of scalable,flexible and high performande via price ratiodistributed parallel pr
8、ocess system.That task allocation and workload dispatchment becomesthe key factor of whether the redundance resource and potentiality of the system can be made themost of or not.At the same time ,it is also a very ardous issue.Many solutions were proposed inthe past few years.for example,allocation
9、based on graphics theory and so on.But these methodsare not perfect. Recently, it indicates that all fields of computer science is being developed towards parallel computing .People begin to study these theory and application problems with distributed and parallel point of view.It is no doubt that t
10、 he parallel genetic algorithm brings a new opportunity to us on the NPC Problems. The genetic algorithm is a high parallel ,random ,adaptive theory that introduces natural selection and genetical mechanism from biological kingdom .It is used mainly in optimization and machine study and so on.And it
11、 can reach the best efficiency by running on the parallel system. In this paper, we propose a task placement based on the parallel genetic algorithm.And we designe an simple adaptive balance algorithm for PVM system.And we also enhancea library for network applications .It is proved feasible through
12、 our experiment .In addition,we summary what we have done and propose some advice for the more research .Keyword: distributed parallel computing,genetic algorithm,PVM,task,Workload,adaptive 概述 1.1并行处理技术的发展最近20多年,并行处理技术一直是计算机科学技术领域的重大研究课题之一,它对提高计算机的性能有着重大作用和广泛的应用前景。并行计算机并不是凭空产生的,而是反映了单处理机向高指标发展的自然趋势。
13、现代使用的单处理机结构是John Von Neumann式的,由单个程序计数器控制其执行顺序,在任一时刻,只有一条指令在执行。机器的串行性对于高速处理来说是一个严重障碍。单处理机运算速度的提高是有限的。现在实际中存在的许多大规模和超大规模问题用传统的单处理机是不能解决的。现在进行大规模信息处理采取的主要策略是克服Von Neumann模式的缺点和把工作分散到许多单处理机中,尽可能的高速度、高效率的进行并行处理,即发展并行处理技术。并行处理技术中的几个主要难题:(1) 任务的分配非常困难在处理机或节点机数目很多的情况下,要把任何一个问题分解成足够多的并行过程是非常困难的,并且着也不是所有的问题都
14、能做到这一点。在分布式计算机系统中,由于分布式算法具有分散的通信结构和相对独立的模块,在衡量一个算法好坏时,除了考虑时间复杂性、空间复杂性还要计算模块间的通信量IMC,因而一个分布式算法比其他算法更加复杂。在分布式计算中如何充分利用计算的局部性原理和寻找任务最优分配算法以减少过程之间的通信量和活获得高性能,是一个至今仍未很好解决的问题。(2) 很难摆脱串行处理方式的约束现有的软件产品绝大多数是按串行算法研制的。为了继承发扬人类的这笔财富,在原有的应用领域内研究并行处理技术时不得不考虑如何利用这笔财富,因此现有的并行算法绝大部分是从串行算法改造过来的。(3) 处理机之间的通信开销有可能使并行处理
15、技术得不偿失(4) 并行处理技术的主要难题是软件 对于含有大量处理机的并行处理结构,软件对系统的影响更大,其性能差距可几个数量级,软件的关键在于如何高效地进行存储管理和机间通信。软件中最难的是并行编译程序。 1.2集群技术概述 随着电子信息时代的来临,人们把越来越多的工作交给计算机完成。因特网为人类展示出更为宽广的分布式计算模式的天地,随着个人计算机性能的增强、存储设备容量的增加,似乎数据更多的分布在各个微机中。但是对于大型企业和网络提供商来说,他们无限增长的数据必须集中存储和处理,因此企业级的运算对计算机的处理能力提出了更高的要求,计算机系统供应商必须不断完善,改进现有的计算技术,使它们越来
16、越强大。 集群技术是使用特定的连接方式,将相对于超级计算机便宜许多的计算机设备结合起来,提供与超级计算机性能相当的并行处理技术。早在七十年代就有人提出可以使用这种集群技术完成并行处理,但是由于受到当时网络交换技术的限制,集群系统在性能上与其他并行处理系统相距甚远,直到ATM技术、千兆位以太网技术逐渐成熟的今天,它才具备了与超级计算机相匹敌的能力。 目前最为流行的方式是用高速或超高速网络传输设备将几台服务器相连,实现并行处理,屏蔽单点失效。目前对集群技术需求最迫切、发展最快的领域主要有:www应用、数据库应用等商业计算领域。集群系统可以通过使用纯硬件的方式或使用软硬件结合的方式来搭建。 在日常实
17、践中,天气预报、海洋模型和环流、遗传工程、先进工业制造技术、能源工业、地震分析、化学工业、材料科学、生物科学、环境研究、结构分析、仿真、电子交易和军事等许多领域中都存在着大量的复杂计算问题,被称之为“巨大挑战问题”,解决这些问题无疑对人类有着重要的意义,这也就是高性能计算所要努力的目标。美国从1992年开始实施高性能计算方面的计划HPCC,并投入巨资研究解决“巨大挑战问题”的环境、方法和技术。 实现高性能计算的核心是并行技术的发展,尽管各类并行结构的超级计算机在高性能计算中发挥了重要作用,但随着网络技术的发展和普及,以网络为基础的分布式并行计算环境以其较高的性价比和大范围、大数量异构机群并行成
18、为新的高性能计算环境,其思想来源于并行结构随网络发展的自然延伸: 连接多个日益廉价的独立计算机,如工作站和PC机,形成类似MPP的性能; 利用网上日益庞大的空闲处理机资源,形成可扩展的高性能计算能力; 连接广域范围内的各种资源,形成巨大的协同计算环境,并使这些昂贵的资源能为尽可能多的用户共享。 专用机群一般由一组同构的处理机组成(有时也有异构情况),通常安装在一个机房内,或者将主板等安装在一个机柜的各机箱中(商业机群常用这种方式),或简单地把PC机堆砌在机架上(Piles of PC)。在这种机群中,每个处理机都是专用的、无属主的,由系统管理员统一管理,用户可通过前端机进行访问,用户无需知道机
19、群的详情,就像使用MPP机一样,易于配置和管理,不受外界干扰,通信可靠且延迟小,适合于面向加速比的并行任务和面向吞吐量批处理作业。专用机群具有相对结构和管理简单、易于扩展等特点,用途极广。1994年夏,美国的研究人员建成了第一个Beowulf机群,它由16个DX4处理机组成。1997年,又推出了16个基于P的机群,只需花费5万美元却具有每秒10亿次的浮点运算能力,而购买具有相同能力并行机的投资数却是它的10倍。 机群技术已经成了开发成本有效且可扩展的并行计算机的一大趋势。 1.3支持软件随着开放的分布式计算环境的普及,系统软件所扮演的角色日趋重要。为协调各节点机的工作,系统应具备负载管理功能。
20、1 工作负载管理在支持对完成企业商业目标十分重要的应用程序的同时,工作负载管理必须对所有类型的运行任务进行有效管理,同时最大限度地利用硬件与软件资源。从功能角度来说,工作负载管理软件调度,分析并监测企业应用工作负载的进程。工作负载管理在网络水平上来说具备许多传统操作系统的功能,它动态地通过调度用户作业以充分利用分布式异构计算资源。 虽然与数据管理和系统管理联系甚密,工作负载管理在几个主要方面同他们有显著的不同。数据管理为所有应用程序提供分布式数据平台,而工作负载管理提供“分布式计算平台”;系统管理侧重于硬,软件资源并由操作人员使用,而工作管理支持企业系统的计算工作负载,并被可信任的最终用户直接
21、或间接地使用。 工作负载管理弥补了系统管理的不足之处。系统管理确保了分布式计算资源发挥正确的功能,而工作负载管理确保了分布式计算资源有效地满足重要商业处理进程的要求。 以前,工作负载管理在系统软件市场中并不是主要的组成部分,由于转向异构式企业计算环境的强烈趋势,工作负载管理日趋重要。正是因为它能够在日益复杂的分布式环境中充分利用异构的硬/软件资源。在分布式计算环境中充分发挥虚拟主机的优势,将数据管理,系统管理和工作负载管理集成起来是十分重要的。 2 工作负载管理的功能与需求 : 从功能上角度来说,涉及到分布式应用工作负载的调度,分析,监测与操作。下面讨论这三个功能领域。 l 工作负载调度 工作
22、负载管理最重要,且是最基本的一个功能就是利用最合适的可用计算资源进行动态作业调度。根据作业要求,作业调度可以基于以下一或多个方面:l 资源可用性:一项作业可能要求一种特殊的系统平台,一定的内存或特殊的软件许可证,无须用户指定主机运行该作业,工作负载调度动态地用最佳可用计算资源满足作业要求。如果所需资源不可用,它可将作业延迟,等待下一次批处理来完成。 l 工作负载分析:尽管作业调度优化了工作执行程度并确保了可靠的作业处理,作业分析还支持作业数据综合分析以进入整个系统处理。 作业分析使用数据获得(1) 计算资源的下载与可用性 (2) 作业处理与资源利用 (3) 系统配置; 1.4任务分配负载均衡的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 一种 基于 并行 遗传 算法 机群 负载 分配 调度 策略 设计 实现
链接地址:https://www.31ppt.com/p-3977339.html