并行计算机的现状与发展趋势

并行计算机的现状与发展趋势

陈数清


作者简介
陈树清 中国科学院计算所研究员。从1975年研制我国第一台向量计算机开始,参加了多
台向量机、并行机的研制,负责软件工作。曾任计算所副总工程师、国家并行计算机工程技
术研究中心副主任等职,两次荣获国家科技进步一等奖。
最近几年,超级计算机领域连续出现了一些令人担忧的事情(见表1)。
@@15097000.GIF;表1 1994-1996年美国超级计算机领域重大事件@@
由于冷战结束,世界政治格局发生了变化。于是,美国政府大幅度削减军费,停止执行"星
球大战"计划,这一切成为以上变故的直接原因。表1所列事件包括以"超级计算之父"CRAY命
名的、在超级计算机领域独领风骚10多年的两家公司,以及在90年代初享誉超级计算机界的
MPP制造商TMC。无情的事实足以说明,高性能计算机领域正经历着转折期的困难。面对如此
风云变幻的形势,我们必须冷静思考,认真分析。
冷战和历史上的战争有可能促进技术的进步,然而这种作用只能是暂时的、局部的;和平
与发展才是科学技术的春天。作为三大科学研究手段之一的高性能计算机,其发展的根本动
力来自于各类科学技术对计算机性能永无止境的需求和生产的实际需要。在1996年的"Supe
rComputing '96"大会上,美国政府HPCC计划全国协调委员会主席John Toole在题为"危机、
创新与机会:HPCC将向何处去"的报告中对此做了很好的说明。他指出,高性能计算与通信对
美国的国家安全及保持美国在未来的优势至关重要。美国政府将在高端计算机与通信、大规
模网络、高可信系统等5个方面制定10~15年的长期计划,保持长期持续性投资。
过去的10年是超级计算机、特别是并行机飞速发展、走向成熟的10年。10年中CPU芯片
的性能翻了几番,计算机工作者发明了Wormhole(虫蚀寻径)技术,找到了更符合实际的LogP并
行计算模型,创造了成百的不同规模、不同拓扑结构的并行平台。特别是,由于多种软硬件技
术的进步,使既具有可扩展性、又具有可编程性的分布式共享存储结构的并行机成为可能。
并行计算机是当今超级计算机的主流,本文对超级计算机(SuperComputer)和并行计算机
(Parallel Computer)不做严格区分。

一、并行计算机的现状:可扩展性与可编程性
当今的并行计算机,除大家熟悉的SMP(共享存储多机系统)和MPP(大规模并行处理系统)
外,还有向量并行机(PVP,或称VPP),以及工作站群集(NOW,或称COW)。
PVP与SMP的主要不同是CPU,后者是标准的RISC芯片,而前者是各个厂家自行研制的向量
处理机。PVP承袭了向量机的优势,技术成熟,效率高,可将互连网络的路由器插入其中,方便
地进行各种优化组合设计。但是,PVP的向量CPU与已经形成上千万生产规模的RISC相比,在规
模效应和性价比上相差悬殊。另外,RISC的生命力在于不断吸收超级计算机领域的最新技术
,目前的目标之一就是增加向量处理的功能。果能如此,SMP与PVP就完全统一了。
将NOW作为并行计算机的一个类别,概念上有点含糊。TOP 500中没有NOW这一类。当然,
具有"单一系统形象(Single System Image)"的工作站群集,特别是同构的,其本质与MPP没有
差别。
不同的并行计算机各有特点,但它们也有区别于其它计算机的共性。其中最重要的就是
可扩展性(Scalability)和可编程性(Programmability)这一对共生而又矛盾的特性。
可扩展性是并行计算机最大的优势,可简单定义为"在确定的应用背景下,计算机系统的
性能要随处理机数的增加而线性增长"(美籍并行处理专家黄铠教授语)。可扩展性包括规模
可扩展、时间可扩展和问题可扩展几个方面。规模可扩展的要点是均衡,均衡的目的是防止
瓶颈的发生,"三T"表达了当今均衡的指标。时间可扩展也称换代可扩展,主要指体系不受限
于芯片、器件、工艺等。问题可扩展指格点增加时,系统能适应问题规模的扩大;而当问题的
粒度加大时,效率能相应提高。现有的MPP,如Inetl的Paragon、IBM的SP/2、国内的曙光100
0,一般认为是可以扩展的。
可编程性是在并行机发展的过程中,伴随可扩展性而产生的新概念。并行计算机有共享
与分布式两种存储结构,所以操作系统进程间的通信(IPC)也有两种不同的机制:共享变量和
信息传递。机器结构和操作系统的这些区别又影响到支撑软件和应用软件的编程模式。SMP
的程序设计仍以传统的高级语言为基础,系统提供自动并行识别或增加并行语言成分。而MP
P必须建立另一种编程环境(如PVM、MPI等),在程序中显式地写出信息的发送和接收。这不仅
导致应用软件编写困难,还给广大用户增加了很多负担。为此,创建了一个新的单词Program
mability,用以描述并行计算机的这一重要特点。
总之,从存储和编程模式看,并行机可分为SMP与MPP两类。SMP具备可编程性,不易扩展;
MPP具有可扩展性,不易编程。如何将两者的优点融合在同一并行结构中,一直是困扰超级计
算机研制者的难题。

二、简要的历史回顾
历史是现实的镜子,总结过去对预测超级计算机的发展趋势非常有益。
一般将CRAY-1投入运行的1976年称为"超级计算元年"。然而,早在1972年就已研制成功
的超级计算机ILLIAC-IV,是现今MPP无可争议的先辈。什么是超级计算机的发展方向,是以C
RAY-1为代表的向量机,还是以ILLIAC-IV为代表的并行机,这是70年代计算机界的热门话题。
这两种机器各有长短,ILLIAC-IV具有可扩展性,一个象限64个处理单元,原设计为4个象限,可
扩展到256个单元,但它在编程模式上与传统的大型机相差太大。CRAY-1正好相反,编程模式
可基于FORTRAN IV。这是超级计算机历史上第一次有关可扩展性与可编程性的较量,最后以
向量机的胜利而告终。从此,并行计算机沉寂多年,而以CRAY为代表的向量机则称雄超级计算
机界十几载。
80年代初,刮起了一股小巨型机(miniSuperComputer)的风暴。几十个小巨型机厂家如雨
后春笋般冒了出来,机器结构五花八门,大体上也可分为向量机和并行机两大类。这是超级计
算技术从高科技领域走向民用的一次重大尝试,所以小巨型机又被称为普及性巨型机。经过
几年的较量,大批厂家偃旗息鼓,而Convex的C系列却一支独秀。这无异于70年代CRAY战胜IL
LIAC-IV的重演。
到80年代后期,向量机的造价越来越高,而性能提高却越来越难。CRAY-3的时钟周期为2
ns,CRAY-4为1ns。在这种形势下,人们又重操旧业,并行计算机再一次红红火火地搞了起来。
在1990年的超级计算机大会上,Hillis博士公开宣称:"传统的巨型机(向量巨型机)5年内将被
淘汰",在当时引起了一番争论。今天看来,Hillis博士的看法基本正确。
然而,并行机对向量机的胜利,并不等于可扩展性对可编程性的胜利。90年代初,当各种
并行机百花争艳,令人们眼花缭乱之时,杀出了一匹"黑马",即SGI公司。在1995年11月公布的
TOP 500中,它独占125台,跃居众家之首。其优势之一是具有共享存储的SMP结构,因而具有可
编程性。
从以上列举的三个典型史实看,在超级计算机发展的前20年间,基本遵循这样一个规律:
当可扩展性与可编程性不能相容时,人们总是选择可编程性,而舍弃或适当考虑可扩展性。然
而,这毕竟只是一种权宜之计。最近几年,超级计算应用领域对计算机性能的需求飞速增长,
不仅向量机不能担此重任,SMP和PVP也已力不从心。在1996年11月公布的TOP 500(见下图)中
,MPP仍呈上升趋势,而SMP出现了转折,呈下滑之态。并行计算机向何处去?难道人们只能反过
来舍弃可编程性,才能获得可扩展性吗?当然不是。美籍并行处理专家黄铠教授早在1993年就
指出:"并行处理的发展趋势是用分布式共享存储结构(Distributed Shared Memory,DSM)和
标准Unix来构造可扩展超级计算机。"即并行计算机发展的趋势既不是SMP,也不是MPP,而是
两者优势互补的DSM。
@@15097001.GIF;图1 TOP 500中1993~1996年各类并行机的变化@@

三、分布式共享存储结构——市场选择的必然结果
超级计算机必须具有很好的可扩展性,这一点已成定论。然而,这并不意味着可以不考虑
或少考虑可编程性。如前所述,在超级计算机的发展史中,总是首先满足可编程性。这里有一
种无形的、然而却是决定性的力量在起作用,这就是市场!大部分超级计算机的用户所要求的
不仅仅是高的性能,更重要的是高的性价比。
超级计算机要有可编程性,似乎是为了迎合用户编程的习惯,实质是为了获得高的性价比
。一般说来,超级计算机系统可分为两大部分,一部分是包括硬件和系统软件的平台,另一部
分是应用软件。对不具有可编程性的超级计算机,即使平台有较高的性价比,但却大大增加了
移植原有应用软件的难度和开发新的应用软件的成本,从而导致整个系统的性价比大幅度下
降。这种例子很多。例如,Tensor软件公司与Intel通力合作,在Intel的ipsc上开发并行石油
地震资料处理应用软件,用了4年多时间才完成了一个应用系统。相应地,中科院计算所与石
油天然气总公司合作,将地震资料处理软件GRISYS在SGI Power Challenge上并行化,仅用了
8个人4个月,目前该系统在兰州正常运行。还有一个突出的例子是CM-5。据TMC自己介绍,他
们有1/3的技术人员必须常驻用户单位,与用户一起移殖、开发应用软件,指导用户使用并行
机。正因为并行机需要如此巨大的附加成本,所以被市场无情淘汰也就不足为怪了。
如果过去市场的作用在超级计算领域还不很明显的话,那么随着世界政治格局的变化,这
一问题已变得非常明确。今天,并行机已突破狭窄的应用范围,走向包括事务处理在内的广阔
市场。
1996年,SGI并购CRAY时IDC评论认为,这次并购"意味着巨型机厂家与少数几个客户携手
生产少量专门化、高价格产品的时代已经结束","就目前市场来说,厂家必须把这类高档系统
作为一种更普通化的产品提供给用户"。这就是说,超级计算机一味依赖于政府和军方的支持
、不计成本、只求性能的时代已经过去。从世界范围看,超级计算机行业也由"计划经济"走
向了市场。
超级计算机应有好的性价比,这已被很多超级计算机用户所认识。NASA在1996年11月发
表的NPB测试报告中,列出了多种平台每百万美元的持续性能(见表2)。报告认为,这些机器的
性能相差不大,但性价比却相去甚远。
因此,可编程性与可扩展性同样是今后超级计算机必不可少的重要性能。这是作为"上帝
"的广大用户的意志,是市场选择的必然结果。
@@15097002.GIF;表2 NASA B组三个程序测识结果的平均值@@

四、分布式共享存储结构——技术发展的趋势
市场需要既有可扩展性、又有可编程性的超级计算机,但需要不等于现实。要在分布式
环境下实现存储逻辑共享,是一个相当困难和复杂的问题。众所周知,现今的计算机存储器速
度远远落后于CPU,这是一个长期得不到很好解决的严重瓶颈。而在分布式共享存储并行机中
,一个CPU存取远程节点上的存储单元像存取本地单元一样,不仅方便而且具有令人满意的效
率,这使问题难上加难。
按照并行计算模型LogP的观点,这里主要有三个因素:发送与接收端的开销(o),带宽(倒
数g)和时延(L)。并行系统规模扩展时,节点增加,数据传送的路径变长。为此,人们用硬件实
现了Wormhole(虫蚀寻径)技术,把数据包分割为更小的片(或叫微包),采用异步流水的办法,
使时延几乎与经过的节点数无关。随着路上时延的大幅度减小,发送与接收的开销更为突出
。人们将进程破分为线程(thread),使两端的开销减少了两个数量级。在这些关键技术取得
重大突破的基础上,一些研究部门在企业的支持下,设计了各具特色的实验型样机。斯坦福大
学的DASH系统就是一个范例。DASH小组从1988年开始工作,节点由SGI的4D/340(4CPU)构成,
增加了支持目录存储器与群间接口的新板卡,对多种时延隐藏技术进行了大量的研究实验。
其中包括预取技术(Prefetching Technique)、硬件支持的一致性高速缓存(Coherent Cach
e)、非严格的存储一致性(Relaxed Memory Consistency),以及多现场切换技术(Multiple
Context)等。他们的工作证明,这些时延隐藏技术是富有成效的,尤以预取、多现场切换为佳
;多种技术综合利用,效果更为突出;软硬结合,各尽其能,是实现分布式共享存储器的最佳途
径。
超级计算机领域技术上的突破和丰富的成果,使DSM并行机产品水到渠成。人们20多年的
期待终于变成了现实,一些既具有可扩展性、又具有可编程性的分布式共享存储并行机相继
面世,如Sequent的NUMA-Q、HP(Convex)的SPP等。SGI去年发布的origin系列,是一个典型的
DSM结构的产品,称为S2MP(Scalable sharememory Multiprocessing),是SGI SMP的成功经验
、DASH的研究结果、以及CRAY先进技术的共同结晶。
超级计算机已走过了整整20年,这是一段可扩展性与可编程性这一对矛盾相互作用直至
统一的历史。市场需求是发展的动力,技术进步是发展的条件。有专家估计,从现在起直到2
1世纪若干年,DSM结构将是超级计算机的主流,将稳固地占领超级计算机的主要市场。(本文
是作者在中国计算机学会"当代计算机体系结构、操作系统的发展"学术研讨会上的报告,发
表时作了修改)

(计算机世界报 1997年 第15期)



周报全文频道联系方式:010-68130909
【关于我们】  【广告服务】  【周报发行】  【投稿指南】  【投稿声明】  【联系方式】  【法律声明】
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值