浅谈并行处理技术

2022-10-17

并行处理技术是并行计算机的关键技术, 并行处理是指处理器、存储器、I/O设备以及配套的并行软件能在同一时刻进行同时操作。随着信息技术的飞速发展和日益普及, 海量信息的处理和高性能计算的要求越来越迫切。高性能价格比的海量信息处理技术已经成为产业界和学术界迫切需要解决的问题, 针对这一问题, 并行处理技术越来越被重视和研究。因此, 在现代大规模并行处理 (MPP) 系统的研究中, 除了需要开发硬件结构外, 还要解决软件环境和系统的可用性、可扩展性等问题, 希望软件和算法在并行性方面有新的突破。预计21世纪的巨型机、大型机、小型机、高档微机等将全面进入并行处理时代, 并行处理技术将成为21世纪制造高性能计算机的关键技术。对并行处理技术的研究, 既包括并行软件系统, 还包括并行体系结构。

1 并行计算机及并行软件

目前对并行处理机的研究热点主要集中在:并行向量处理机PVP (Parallel Vector Processor) 、对称多处理机SMP (Symmetric Multiprocessor) 、机群系统和大规模并行处理机MPP (Massively Parallel Processor) 四种结构上。并行机的使用存在两个问题:一是系统的使用效率;二是使用的方便性, 这两个问题的解决都有赖于并行软件的发展。

1.1 并行操作系统

操作系统的功能:一是对计算机资源进行管理;二是为用户使用计算机提供支持。在操作系统中引入并行处理机制, 主要是让CPU和外部I/O设备并行地工作。引进中断技术, 在传统的计算机系统结构上实现了分时操作。在SMP和M P P结构的系统中, 操作系统的并行处理要复杂许多, 既要使大量CPU同时充分使用, 又要使C P U和外部I/O设备充分并行运行。MPP机操作系统一般可划分为两类:一类是主从式结构;另一类是浮动式结构;主从式结构的基本框架是在一个或多个处理机上运行主操作系统, 在其他大量的处理机上运行从操作系统。主操作系统具有完善的操作系统功能, 并为从操作系统分配任务;从操作系统是一个简单的操作系统内核, 负责对主操作系统分配的多个运行任务进行管理和调度。在浮动式结构中, 每个处理机上的操作系统是一个完整系统, 他们具有完全相同的功能。无论是哪种结构, 面对巨大数量的处理机群, 如何运用以上技术使其成为一个高效运行的系统, 就成为MPP机操作系统面临的主要问题。计算机系统的综合效率是一个十分复杂的问题, 从应用程序的编制到系统的管理调度, 都与操作系统密切相关。

1.2 并行算法

并行算法是指可同时执行的多个进程的集合, 各进程可相互作用, 协调和并发操作。并行算法取决于计算机的结构和题目, 它是提高多处理机并行性能的关键。研究并行算法的一种思路是将大的程序分解成可由足够多的并行处理的过程。每个过程被看成是一个结点, 将过程之间的关联关系用结点组成的树来描述。这样, 程序内各个过程之间的关系就可被当成是一种算术表达式中各项之间的运算, 表达式中的每一项都可看成是一个程序段的运行结果。因此, 研究程序段之间的并行问题就可设想成是对算术表达式如何并行运算的问题。

1.3 并行语言

并行算法需要用并行程序来实现。为了加强程序并行性的识别能力, 有必要在程序语言中增加能明确表示并发进程的成分, 这就要使用并行程序设计语言。并行程序设计语言可以是在普通顺序型语言上加以扩充, 增加能明确表示并行进程的成分, 但每一种经扩充的语言仅能支持一种类型的并行性;也可以通过设计全新的并行程序设计语言来支持并行处理。并行程序设计语言的基本要求是:能使程序员在其程序中灵活, 方便地表示出各类并行性, 能在各种并行/向量计算机系统中高效地实现。

2 并行计算模型

并行计算模型的研究会对并行算法的分析、设计及算法的评价带来可操作的方法, 同时会指导并行计算机系统的设计。概括来说:并行计算模型应在并行算法和并行计算机体系结构之间建立一座桥梁, 以便用户据此分析并行算法的性能。

并行计算模型应为应用软件开发人员提供一些性能指标, 引导他们开发效率更高的程序。到目前为止, 串行计算机的结构没有突破冯·诺依曼模型的体系结构。但是, 在并行处理方面, 情况就大不相同。尽管已经设计了一系列并行计算模型, 但是没有哪一个模型能够概括各种并行体系结构, 因而不同厂家生产的并行计算机各不相同。因此, 通过对并行计算模型的研究, 可以对并行体系结构达成一种或几种共识, 规范并行程序设计, 寻找一种或几种统一的并行算法分析、评价和性能预测的方法和途径。随着并行处理技术的发展, 出现了各种各样的并行体系结构模型。这就要求计算模型能涵盖更多并行机的特征。目前并行计算机发展的主流机型可粗略地归纳为三类, 即共享存储模式、分布存储模式、共享存储与分布存储混合方式。相应的程序设计也可以归为三类, 即共享程序设计、基于消息传递程序设计和混合编程模式。由于这些研究逐渐汇集到一种或几种并行体系结构, 这就使得对并行计算模型的研究有了相对集中的目标, 同时又有算法研究可用的通用编程环境。这些条件进一步刺激了并行计算模型的发展, 并为“确定少量的并行计算模型作为程序设计语言的自然基础, 并有助于高性能硬件的实现”这一研究目标的实现提供了有利条件。

3 并行处理技术的发展趋势

当前, 世界上凡是有能力研制巨型机的厂商, 已大多转向研制并行机或者是研制向量技术与并行技术相结合的向量处理机高度并行化系统。美、日以及西欧各国围绕超级计算机已开展激烈的争夺战。美国政府制定了“超级计算机与通信”的发展计划, 美国国防部也把超级计算机列为“21世纪科研关键技术”之一。如果此项计划得以圆满完成, 将使美国今后十年的国民经济总生产量增加3000亿美元左右。日本也不甘落后, 他们动用了三倍于美国的巨额投资, 于1992年制定了由国家直接领导, 组织政府相关部门, 计算机界厂商, 高等学校等单位, 联合研究成果共享的国策, 并把大规模并行计算机列为国家21世纪的重点发展项目。近些年我国在并行处理领域取得了很大的进步国防科技大学先后研制成功向量并行机银河系列, 国家智能计算机研究开发中心研制成功了全对称多处理机曙光系列。

摘要:本文阐述了并行处理技术下的计算机体系结构和软件系统, 介绍了并行计算模型对并行算法的影响, 最后展望了并行处理技术的发展趋势以及未来计算机并行处理的发展方向。

关键词:并行处理,并行计算机,并行计算模型

参考文献

[1] 李学干.计算机系统结构 (第四版) [J].2006.

[2] 梁兴琦, 欧阳一鸣.并行处理与并行计算机[J].安徽建筑工业学院学报, 1999, 7.

[3] 何秉姣.并行处理技术研究[J].计算机技术与应用进展, 2007.

本文来自 99学术网(www.99xueshu.com),转载请保留网址和出处

上一篇:猪口蹄疫的症状和防治方法下一篇:二级学院构建创业工作室的模式探索与实践