并行计算

  • 格式:doc
  • 大小:370.00 KB
  • 文档页数:12

并行计算

1定义

编辑

并行计算(Parallel Computing)是指同时使用多种计算资源解决计算问题的过程,是提高计算机系统计算速度和处理能力的一种有效手段。它的基本思想是用多个处理器来协同求解同一问题,即将被求解的问题分解成若干个部分,各部分均由一个独立的处理机来并行计算。并行计算系统既可以是专门设计的、含有多个处理器的超级计算机,也可以是以某种方式互连的若干台的独立计算机构成的集群。通过并行计算集群完成数据的处理,再将处理的结果返回给用户。

2特征

编辑

为利用并行计算,通常计算问题表现为以下特征:

(1)将工作分离成离散部分,有助于同时解决;

(2)随时并及时地执行多个程序指令;

(3)多计算资源下解决问题的耗时要少于单个计算资源下的耗时。

并行计算是相对于串行计算来说的,所谓并行计算分为时间上的并行和空间上的并行。

时间上的并行就是指流水线技术,而空间上的并行则是指用多个处理器并发的执行计算。

3结构

编辑

并行计算科学中主要研究的是空间上的并行问题。从程序和算法设计人员的角度来看,并行计算又可分为数据并行和任务并行。一般来说,因为数据并行主要是将一个大任务化解成相同的各个子任务,比任务并行要容易处理。

空间上的并行导致了两类并行机的产生,按照Flynn的说法分为:单指令流多数据流(SIMD)和多指令流多数据流(MIMD)。我们常用的串行机也叫做单指令流单数据流(SISD)。MIMD类的机器又可分为以下常见的五类:并行向量处理机(PVP)、对称多处理机(SMP)、大规模并行处理机(MPP)、工作站机群(COW)、分布式共享存储处理机(DSM)。 访存模型

并行计算机有以下五种访存模型:

均匀访存模型(UMA)

非均匀访存模型(NUMA)

全高速缓存访存模型(COMA)

一致性高速缓存非均匀存储访问模型(CC-NUMA)

非远程存储访问模型(NORMA)。

计算模型

不像串行计算机那样,全世界基本上都在使用冯·诺伊曼的计算模型;并行计算机没有一个统一的计算模型。不过,人们已经提出了几种有价值的参考模型:PRAM模型,BSP模型,LogP模型,C^3模型等。

4网络设置

编辑

并行计算机是靠网络将各个处理机或处理器连接起来的,一般来说有以下几种方式:处理单元间有着固定连接的一类网络,在程序执行期间,这种点到点的链接保持不变;典型的静态网络有一维线性阵列、二维网孔、树连接、超立方网络、立方环、洗牌交换网、蝶形网络等。静态连接

5动态连接

编辑

用交换开关构成的,可按应用程序的要求动态地改变连接组态;典型的动态网络包括总线、交叉开关和多级互连网络等。

计算机集群

1简介编辑

计算机集群简称集群是一种计算机系统, 它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作。在某种意义上,他们可以被看作是一台计算机。集群系统中的单个计算机通常称为节点,通常通过局域网连接,但也有其它的可能连接方式。集群计算机通常用来改进单个计算机的计算速度和/或可靠性。一般情况下集群计算机比单个计算机,比如工作站或超级计算机性能价格比要高得多。

2集群分类编辑

集群分为同构与异构两种,它们的区别在于:组成集群系统的计算机之间的体系结构是否相同。集群计算机按功能和结构可以分成以下几类:

高可用性集群 High-availability (HA) clusters

负载均衡集群 Load balancing clusters

高性能计算集群 High-performance (HPC) clusters

网格计算 Grid computing

高可用性集群

一般是指当集群中有某个节点失效的情况下,其上的任务会自动转移到其他正常的节点上。还指可以将集群中的某节点进行离线维护再上线,该过程并不影响整个集群的运行。

负载均衡集群

负载均衡集群运行时一般通过一个或者多个前端负载均衡器将工作负载分发到后端的一组服务器上,从而达到整个系统的高性能和高可用性。这样的计算机集群有时也被称为服务器群(Server Farm)。 一般高可用性集群和负载均衡集群会使用类似的技术,或同时具有高可用性与负载均衡的特点。

Linux虚拟服务器(LVS)项目在Linux操作系统上提供了最常用的负载均衡软件。

高性能计算集群

高性能计算集群采用将计算任务分配到集群的不同计算节点儿提高计算能力,因而主要应用在科学计算领域。比较流行的HPC采用Linux操作系统和其它一些免费软件来完成并行运算。这一集群配置通常被称为Beowulf集群。这类集群通常运行特定的程序以发挥HPC cluster的并行能力。这类程序一般应用特定的运行库, 比如专为科学计算设计的MPI库。

HPC集群特别适合于在计算中各计算节点之间发生大量数据通讯的计算作业,比如一个节点的中间结果或影响到其它节点计算结果的情况。 网格计算

网格计算或网格集群是一种与集群计算非常相关的技术。网格与传统集群的主要差别是网格是连接一组相关并不信任的计算机,它的运作更像一个计算公共设施而不是一个独立的计算机。还有,网格通常比集群支持更多不同类型的计算机集合。

网格计算是针对有许多独立作业的工作任务作优化,在计算过程中作业间无需共享数据。网格主要服务于管理在独立执行工作的计算机间的作业分配。资源如存储可以被所有结点共享,但作业的中间结果不会影响在其他网格结点上作业的进展。

3集群技术编辑

1、通过多台计算机完成同一个工作。达到更高的效率。

2、两机或多机内容、工作过程等完全一样。如果一台死机,另一台可以起作用。

4集群软件编辑

Sun Grid Engine

计算群集的常规要求

HCP 资源

• Windows HPC 社区

• 使用 WCCS 2003 进行高性能计算

• Microsoft 64 位计算概述

• Microsoft Servers 主页

• Compute Cluster Server 技术中心

• 高性能计算群集部署安装、配置和调整分步指南

现代 HPC 系统具备一些相同的关键元素,用于协助处理工作负荷。首先,您需要多个系统。还需要制订计划程序,以协调各个节点的工作分配。这个计划程序在主管节点(头节点)上运行,确定可用的资源,指派并分配任务,同时跟踪作业的整体状态。它负责在系统群集和用户及管理员提交处理作业的位置点之间协调资源。

群集需要一种在节点间进行通信的方式。根据工作的具体类型,节点可能需要高速、低延迟的互联,以便相互传递信息来协调处理。每个计算节点和头节点至少必须连接到一个共用的网络。

若要大量互联系统协同工作以解决复杂问题,还需时刻关注并提供必要的条件。需要具备能置备、监控、管理和维护数十到成百上千系统的流程和工具,以确保提供协调稳定的环境。

最后也是最重要的,要有能开发出计算群集并行处理功能的应用程序。如果没有可以分解作业使其在多台计算机上进行处理的应用程序,或缺乏能支持“并行调试器”的开发工具,群集能发挥的作用就极为有限。

基于 Windows Server 的群集

2006 年,Microsoft 推出了 Windows Server 2003 Compute Cluster Edition (CCE) 和

Windows Compute Cluster Server 2003 (WCCS),以满足各类 HPC 应用程序的需求。CCE

和 WCCS 的基础是您已经很熟悉的 Windows Server 2003。CCE 是许可与 HPC 应用程序搭配使用的 Windows Server 2003 版本。WCCS 相当于添加了 Microsoft® Compute

Cluster Pack (CCP) 的 CCE。这意味着在部署、管理、监控和维护基于 Windows Server 的群集时,您使用的工具与管理现有 Windows Server 2003 系统所用的工具相同。

CCE 和 WCCS 仅有 x64 版,而没有 32 位 (x86) 版本,这一点请特别注意。附带 WCCS

的 CCE 的硬件要求与 Windows Server 2003 Standard x64 Edition 的硬件要求相同。除了支持高性能硬件(64 位架构),产品还为高性能互联(Gigabit 以太网、InfiniBand、Myrinet

等)提供远程直接内存访问 (RDMA) 支持。

Compute Cluster Pack

如前所述,计算群集的某些基本要求可通过安装 Compute Cluster Pack 得以满足。CCP 是独立的安装程序软件包,其中包括:

• 集成的作业计划程序

• 行业标准 MPICH2 的消息传递界面 (MPI) 支持

• 群集资源管理和用户工具 CCE 和 WCCS 之间的主要区别是 CCP。您可能要问:如果计算群集需要这些组件,为什么只在 WCCS 中有,而在 CCE 中没有。答案是:某些 HPC 解决方案可以充分利用多种作业计划程序或专用 MPI(或者不需要 MPI 支持),并且仅需要一个出色的运行平台,即

Windows Server 2003。由于 CCP 是独立的软件包,您可以将其安装在 Windows Server

2003 的其他 x64 版本上(CCE、Standard、Standard R2、Enterprise 和 Enterprise R2)。

具体细节

WCCS 利用 Windows 的主要基础来简化基于 Windows 群集的管理和操作,包括 Active

Directory®和远程安装服务 (RIS)。Compute Cluster Server 使用 Active Directory 透明管理安全性。借助 Active Directory,用户可以使用一组能在数以百计的服务器节点间运行的凭据,向头节点提交作业。在一个或多个计算节点上执行作业时,它们在提交作业时所提供的用户凭据上下文中运行,之后安全缓存。WCCS 依靠 Active Directory 实现“单点登录”功能。在环境中呈现 Active Directory 的另一好处是:管理员可以使用组策略集中管理服务器和配置策略。

如果您的 IT 组织已经部署了 Active Directory,通过在现有域中构建群集,您可以节省大量时间和管理精力。我们推荐采用这种方法。

如果需要在没有 Active Directory 的环境中部署计算群集,我们建议您部署一个或多个专用域控制器来为群集承载 Active Directory。通常将头节点用作 Active Directory 域控制器,原因在于无论网络的拓扑结构如何,所有节点都已通过网络连接至系统。但是,如果群集数量相当大,建议不要将头节点用作域控制器,否则会加大头节点的负荷。实施时请遵循

Active Directory 的常规部署和管理原则(安装冗余域控制器、足量的备份、良好的安全规程等)

远程安装服务

WCCS 为“Microsoft 远程安装服务”映像部署平台提供了集成的前端。RIS 用于从头节点向每个计算节点部署操作系统映像,这意味着您可以使用 RIS 迅速安装新的群集节点。您不一定非要采用这种方法,在 WCCS 中集成 RIS 是为了方便起见。您还可以使用其他常用的 Windows Server 部署技术,例如,Windows Server 2003 自动部署服务 (ADS)