24、分布式计算网络与元中心:高性能计算的未来之路

分布式计算网络与元中心:高性能计算的未来之路

1. 分布式计算网络概述

分布式计算网络是由网络连接的计算机系统集合,可作为一个连贯且灵活的计算资源。如今,从大型机到个人电脑,众多计算机系统通过本地和全球网络连接在一起,这已十分常见。在分布式并行计算网络中,关键因素是软件环境,它使用户能够同时利用网络中的所有资源来解决大规模问题。

2. 同构计算网络

在同构分布式计算网络中,所有计算机系统完全相同。例如,实验室或研究中心可能有数百台相同的Sun工作站通过局域网连接。一个大型应用问题可以分解为子问题,然后在不同的工作站上并行处理,如下图所示:

graph LR
    A[应用问题] --> B[子问题1]
    A --> C[子问题2]
    A --> D[子问题n]
    B --> E[工作站1]
    C --> F[工作站2]
    D --> G[工作站n]
    E --> H[最终解决方案]
    F --> H
    G --> H

不同工作站之间的信息交换可以通过局域网进行路由。这种计算环境的关键部分是处理作业调度和通信的软件工具。同构并行计算网络不仅为我们提供了强大的计算工具,还利用了原本闲置的资源,因为大多数桌面工作站在工作时间后处于空闲状态。

3. 异构计算网络

异构计算网络是在同构计算网络基础上的进一步发展,它将从桌面工作站到最快的超级计算机等不同的计算机系统视为单一的计算资源来解决应用问题。

在这种计算网络中,并行处理的概念更为广泛。不同的计算机系统连接在一起,作为一个并发的计算资源。其中包括高分辨率图形工作站和能够执行不同粒度并行作业的并行计算机。对于大型应用问题,如湍流建模、全球天气研究或新药物设计等领域的“重大挑战”问题,可以分解为不同部分,由不同的计算机同时处理。例如,可视化部分可由图形工作站处理,而计算密集型部分可分配给最合适的并行计算机。每个分配给特定并行计算机的部分还可以由该并行计算机上的多处理器进一步处理,从而引入了多级并行性。

计算机类型 适用处理部分
图形工作站 可视化部分
并行计算机 计算密集型部分
4. 软件工具

为了让用户能够将联网的计算机作为统一的并发计算资源使用,目前有多种软件环境可供选择。

4.1 PVM(并行虚拟机)系统

PVM是由美国橡树岭国家实验室开发的软件系统,它使异构计算机系统集合能够作为一个连贯且灵活的并发计算资源使用。单个机器可以是共享或分布式内存的并行计算机、向量超级计算机或专用图形或标量工作站,通过各种网络互连。

用户用C或FORTRAN编写的程序可以通过库例程访问PVM的功能,如进程初始化、消息传输和接收以及同步等。程序员可以选择控制应用问题特定部分在计算网络上的执行位置。PVM系统会透明地处理消息路由、不兼容计算机架构的数据转换以及异构计算网络操作所需的其他任务。

PVM适用于由许多相互关联的子算法组成的并发应用程序,这些子算法可以利用网络中各个机器的特定优势。它已用于分子动力学模拟、超导研究、分布式分形计算和矩阵算法等领域。

用户可以通过向netlib@ornl.gov发送电子邮件,内容为“send index from PVM”,免费获取PVM系统,该软件包中包含用户指南和安装说明。目前,PVM系统支持的架构包括:
- Sun工作站
- Sparc工作站
- IBM/RS 6000
- Sequent Symmetry
- Cray
- Intel iPSC/860
- Intel iPSC/2
- CM 2
- Alliant FX 18
- Stardent Titan

在PVM系统中,应用程序被分解为携带适度大量计算工作的组件。在执行过程中,每个组件的多个实例可以在计算网络上的不同机器上启动和处理。网络中的不同架构可以通过三种不同模式访问:
- 透明模式:PVM系统自动将应用程序的组件实例分配到最合适的站点。
- 架构依赖模式:用户可以指定特定的架构(如Sun工作站)来执行特定组件。
- 低级模式:可以指定特定的机器(如第2号Sun工作站)来执行程序的特定组件。

组件进程在网络上的初始化和终止,以及进程之间的通信和同步,都可以通过调用PVM库中的标准接口例程来完成。

4.2 其他软件工具

除了PVM系统,近年来还开发了许多其他用于异构网络计算的软件工具,以下是一些允许用户将分布式计算资源作为连贯计算机来解决大规模问题的软件环境:
- Linda:由美国Scientific Computing Associates Inc.开发,支持Fortran和C编程语言,运行于iPSC/2、SUN、IRIS、IBM RS - 6000、Apollo、Encore和Sequent等。
- Express:由美国ParaSoft开发,支持C和Fortran编程语言,运行于Crays、Intel超立方体、IBM 3090、nCUBE、Transputers以及HP 9000/700、IBM RS - 6000、SUN和SGI工作站网络。
- P4:由美国阿贡国家实验室开发,支持C和Fortran编程语言,运行于CM - 5、Intel超立方体、IBM 3090、Cray、Alliant Fx/8、Sequent、nCUBE以及IBM RS - 6000、SUN和SGI工作站网络。
- TCGMSG(理论化学组消息传递工具包):由美国巴特尔太平洋西北实验室开发,运行于Intel超立方体、KSR - 1、Alliant以及SUN、DEC、HP、SGI和IBM RS - 6000工作站网络。
- CPS(协作进程软件):由美国费米国家加速器实验室开发,运行于SGI、IBM RS - 6000、DEC、SUN、HP和MIPS工作站网络。
- PARMACS:在德国开发,运行于Intel超立方体、nCUBE Parsytec GC、Cray Y - MP以及DEC、IBM RS - 6000、SGI和SUN工作站网络。
- APPL(应用可移植并行库):由美国NASA刘易斯研究中心开发,运行于Intel超立方体、Alliant Fx/8以及SGI、SUN、IBM RS - 6000工作站网络。
- PARTI(ICASE的并行自动化运行时工具包):由计算机应用科学与工程研究所(ICASE)开发,运行于Intel超立方体、nCUBE、CM - 5以及工作站网络,该工具基于PVM和Express构建。
- SPPL(斯图加特并行处理库):由德国斯图加特大学开发,运行于SUN、DEC和IBM RS - 6000工作站网络,仅支持C编程语言。

这些软件环境不仅允许用户使用分布式计算资源作为一个连贯的计算机,还大大提高了在这些环境中开发的并行程序的可移植性。例如,TCGMSG工具为用户提供了一个消息传递库,可用于共享和分布式内存的并行计算机。用户可以使用相同的消息传递子例程在TCGMSG支持的不同架构上开发和实现代码,机器相关的部分由TCGMSG在不同架构上的实现来处理。

分布式计算网络与元中心:高性能计算的未来之路

5. 元中心与元计算机

基于分布式计算网络的概念,美国国家科学基金会支持的四个国家超级计算中心在1992年提出了建立国家元中心以实现高性能计算的设想。元中心的创建将分布式计算从内部局域网扩展到国家甚至国际网络。

元中心的目标主要有以下几点:
- 让科学家和工程师能够直接将计算问题转移到合适的计算机上,而无需考虑计算机的位置或研究人员的超级计算机使用时间分配。
- 开发国家文件系统,使研究人员能够直接访问他们的文件,无论这些文件位于何处。
- 设计通用用户界面,允许研究人员使用相同的命令在所有不同计算平台上完成任务。

四个国家超级计算中心各自具有独特的优势和专长,将为元中心做出贡献:
| 超级计算中心 | 地理位置 | 拥有的计算机系统 | 研究领域 |
| — | — | — | — |
| 康奈尔理论中心 | 纽约康奈尔大学 | 最新的IBM可扩展并行计算机SP - 1和肯德尔广场共享虚拟内存并行计算机KSR - 1 | 物理、数学和多个工程领域的跨学科研究项目 |
| 国家超级计算应用中心 | 伊利诺伊大学厄巴纳 - 香槟分校 | 来自Thinking Machine的512节点CM - 5并行计算机和大容量内存的Convex C3880(将作为国家可视化服务器) | 数学和计算机科学、生物和医学科学、地球和环境科学以及天文学 |
| 匹兹堡超级计算中心 | 由卡内基梅隆大学、匹兹堡大学和西屋电气公司合作 | 曾在1990年将Cray Y - MP和CM 2通过高速链路连接,目前正在开发将最新的16处理器Cray C90和Cray Research的可扩展大规模并行机器T3D连接的单一供应商、紧密耦合的异构超级计算环境 | 结构生物学、蛋白质和DNA序列分析、生物研究中的高性能成像以及大规模环境建模 |
| 圣地亚哥超级计算中心 | 加利福尼亚大学圣地亚哥分校校园 | 大规模并行Inter Paragon超级计算机 | 为未来元中心开发计算和通信基础设施,包括高速千兆位每秒网络测试平台、网络性能分析、网络监控和测量工具以及科学数据库 |

graph LR
    A[康奈尔理论中心] --> E[元中心]
    B[国家超级计算应用中心] --> E
    C[匹兹堡超级计算中心] --> E
    D[圣地亚哥超级计算中心] --> E

元中心为研究人员提供了丰富多样的资源,这些资源可能在任何单一的大学、研究实验室或超级计算中心都无法获得。元中心提供的资源使研究人员能够开发完整的现场模拟系统来解决复杂的工程问题,并及时改进主要产品(如飞机、导弹和汽车)的设计。

在这样的系统中,偏微分方程的高效求解算法是核心部分,会生成大量的求解数据,这部分通常计算量极大,需要大规模并行计算机。完整模拟系统的其他关键部分包括复杂几何形状的网格生成和求解数据的可视化,以便进行准确快速的分析。前者通常称为预处理,后者称为后处理,这两部分通常需要增强的图形处理能力、高速数据传输、海量数据存储和高效的数据管理。

例如,美国国家科学基金会支持的密西西比州立大学工程研究中心正在开发的计算现场模拟系统,就高度依赖元中心提供的硬件和软件资源。

6. 未来展望

可以预见,元中心的形成和扩展,以及相关的软硬件研究,将引领高性能计算进入下一个世纪。随着这一发展,具有高效偏微分方程求解算法的完整模拟系统将成为解决复杂现实世界应用问题不可或缺的工具。

为了更好地实现这一目标,还需要计算机供应商、软件开发人员和用户共同参与,开发一个更高效、组织更完善且得到更广泛支持的分布式计算网络软件环境。未来的分布式计算环境有望成为开发可移植并行程序和更有效利用各种计算资源的强大工具。

在实际应用过程中,研究人员可以按照以下步骤利用元中心和相关软件工具:
1. 问题分析 :明确需要解决的计算问题,确定问题的规模、复杂度以及所需的计算资源类型,例如是否需要大规模并行计算、图形处理能力等。
2. 资源选择 :根据问题分析的结果,选择合适的元中心和软件工具。可以参考各个超级计算中心的特点和软件工具的适用范围,选择最适合的组合。
3. 程序开发 :使用支持的编程语言(如C、Fortran等)和所选软件工具提供的库例程,开发并行程序。在开发过程中,要注意利用软件工具的特性,如PVM系统的不同访问模式,来优化程序的执行效率。
4. 任务分配 :将开发好的程序根据问题的特点和计算资源的情况,合理分配到不同的计算机系统上执行。例如,将可视化部分分配给图形工作站,计算密集型部分分配给并行计算机。
5. 执行与监控 :在元中心的环境中执行程序,并使用相应的监控工具(如网络性能分析、网络监控和测量工具等)对程序的执行过程进行监控,及时发现和解决可能出现的问题。
6. 结果分析 :对程序执行得到的结果进行分析,评估结果的准确性和有效性。如果结果不符合预期,可以对程序进行调整和优化,重复上述步骤直到得到满意的结果。

通过以上步骤,研究人员可以充分利用元中心和分布式计算网络的优势,解决复杂的计算问题,推动科学研究和工程应用的发展。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值