科技时代新浪首页 > 科技时代 > 滚动新闻 > 正文

千万亿次的背后(1)


http://www.sina.com.cn 2006年11月13日 16:30 赛迪网

  【赛迪网讯】中国计算机事业创建五十周年纪念大会已经成功落下帷幕,与大会同期举行的千万亿次计算机、软件与中间件技术、信息安全、数字媒体、人机交互与虚拟现实、多核CPU与程序设计、搜索技术和三网融合八个分论坛也让与会观众对IT热点技术的发展有了更深入地了解。本期我们将就高性能计算的软、硬件设计热点,由国内此领域的领军人物来做精彩诠释。

  在千万亿次计算机分会上,国内著名的计算机研究、制造和开发部门的代表——中科院计算所研究员孙凝辉,江南计算所研究员谢向辉,联想集团公司、北京航天航天大学祝明发及浪潮集团高级副总裁王恩东研究员为我们带来了在高端的系统,也就是千万亿次系统的研制中所面临的挑战和需要解决的问题,相信此次分会的内容将会为我们带来新的认识,对于我国高性能计算事业的发展也将会有新的认识。

  构建高性能的和谐社区

  中国科学院计算技术研究所研究员 孙凝辉

  现在,每个人都可以拥有一辆车,但并不是每个人都能拥有一辆F1赛车,F1代表的是最快的速度,千万亿次计算机就是计算机中的F1。千万亿次计算机顾名思义就是非常快的计算机,它比我们今天用的个人电脑大约快100万倍,有着很大的学术追求动力和商业价值,这也是联想、浪潮等企业对千万亿次计算机感兴趣的原因。

  千万亿次计算机的体积都很大,因为从学术上看做一个较快的计算机要考虑包括算法、变换、操作系统等问题,当然,结构也是我们需要探讨的一个重要方面。

  首先就来看一下,如果我们要做到千万亿次,把现在PC的运算速度提高100万倍,将面临什么样的挑战。第一个挑战是,要支持十万亿次的运算速度能不能用更低的功耗来达到?第二个挑战,单个CPU都做不快,要实现100万倍的速度更不可能,要是买10万颗CPU放在一起虽然能实现这样的速度,但可靠性怎样?第三个挑战,有人说计算机科学算不了科学,这里涉及到计算规模的问题。还有,像千万亿次计算机这样大的设备,投入大、消耗大,但用户能否得到收益?在学术上,千万亿次计算机的运算速度很快,但100万的单元之间互相进行数据传递和同步,数据不流畅,则实际能达到的效果很差。另外,还有I/O、隔离和虚拟化的挑战,这么多个单元,中间坏掉的单元会不会影响到整个系统?我们怎样给它隔离掉呢?我还总结了一个叫作“中国特色”的挑战,也就是说像美国那样富裕的国家对研制大型机不惜成本的做法,对我国的信息产业有没有帮助?最后一个挑战也是最难的那一个,因为这个问题目前在世界范围内都还没有得到很好的解决:我们有办法做出千万亿次的计算机,但它怎样对我们企业里面原来的那些系统有所帮助?就像我们可以造出一部F1来,但这部F1对我们的

帕萨特、宝来这些商用汽车能有所帮助吗?

  面对这些挑战,研发人员想出了积蓄的办法,也就是将小的计算机通过商品化的网络链接累计出更高的计算能力,这其实是个很好的方案,是用户最容易接受和实现的。但我们需要应对一些诸如管理、编程等的问题。另外一个方法就是Cray,它可以通过三维把很多的CPU连起来,这样做的性能会很好,但肯定要做到相当大的规模。

  现在在计算所的研究中,更多的多核不断地出现,对这么大的计算机有什么影响呢?第一个考虑是降低了频率、减少了空间,容易提升效率规模,问题是它会不会对大机型结构带来革命性的变化?谈到结构,就一定要回答下面这样六个问题。

  第一个,芯片问题。像采用多核方式的复杂CPU如何能做到功耗低又对市场发挥作用。

  第二个问题,互联。现在的大部分系统是两层结构,从未来的角度看,我们觉得三层结构更好。

  第三个问题,资源共享。我们熟悉的SMP共享存储,它非常容易编程,Cluster结构非常好,但它有它的问题,也就是编程不容易做。

  第四个问题,Global Address Space。现在我们都讲虚拟化,它对通讯和同步有帮助,可以支持远程的数据直接的访问,不需要把数据打成包通过邮件的形式传递了。

  第五个问题,分布式操作系统。有很多用户的大量资源是统一编程,那么同一性怎么来做?

  第六个问题,现在的高性能计算机很复杂,事实上比它低端的计算机都很难用了,它们之间有不同的层次,怎么去编程?

  作者:徐昕

  最近,有人提出了“既要选美,更要选劳模”的说法,也就是说我们要在研发千万亿次计算机的同时关注它的应用推进和普及化,努力帮助企业做一些好的机群,使机群大规模走进生产性应用;让科学家人手一台个人高性能计算机,确实普及高性能计算;大力投入,推进算法研究、尤其是并行软件的产业化,构建和谐的“社区”。

  权衡问题贯穿高性能计算

  联想集团首席科学家

  北京航空航天大学计算机学院教授 祝明发

  小知识:

  鲁棒性来源于一个英文单词——Robust,也就是健壮和强壮的意思。控制专家用这个名字来表示当一个控制系统中的参数发生摄动时系统能否保持正常工作的一种特性或属性。就像人在受到外界病菌的感染后,是否能够通过自身的免疫系统恢复健康一样。

  现在,鲁棒性已成为控制理论中的一个重要的研究课题,也是一切类型的控制系统的设计中所必须考虑的一个基本问题。对鲁棒性的研究主要限于线性定常控制系统,所涉及的领域包括稳定性、无静差性、适应控制等。鲁棒性问题与控制系统的相对稳定性和不变性原理有着密切的联系,内模原理的建立则对鲁棒性问题的研究起了重要的推动作用。

  在进行高性能计算机研制的过程中,研发人员会遇到同一个问题——权衡的问题。面对这一问题,有的人说取,有的人说舍,有的人说协调,也有的人说妥协。针对这一问题可以举出几十个、上百个例子,下面就挑其中的几个介绍一下。

  我们经常讲速度,但更重要的是实际运行的速度。高性能计算机的四要素是:求解时间,即实际应用性能或效率;可编程性;程序可移植性;鲁棒性。这其中,可移植性要求标准化/主流技术,少许改动则许多商业软件难以运行,必然限制为提高性能采用的创新技术,但千万亿次机必然采用新技术,而且降低编程难度的高层抽象必然牺牲性能和额外消耗资源。

  我们讲的千万亿次是1994年由美国科学家提出的。在当时,最快的是英特尔的80860,其速度是50MHz,那么研制一个计算机就要1千万片,这在当时的情况看来是不可能的,这就需要一个新技术,这种非主流新技术把处理器放在存储器中,可以做到多种应用。但是它满足不了效率,满足不了编程性和产品要求,但是当时没有其他更好的办法。这个原计划2006年完成研制的机器到现在也不过是纸上谈兵。

  另外,我们经常谈通用体系结构和专用体系结构。一般来讲,同样规模(门数)的专用处理器比通用处理器在特定应用快100倍,像2006年5月成为世界首台千万亿次计算机的日本Protein Explorer MDGrape 3就是这种采用了专用处理器的机器,但就因为不能测试Linpack,无法进入世界TOP500。

  下面一个需要权衡的问题是同构还是异构。日本理化所科学家做了一个预测,想研究一台通用的千万亿次计算机,在2010年研制出台时实际应用速度要达到千万亿次,按照2010年CPU的水平,研制这样的机器,向量是63亿次,专用芯片的效率最高,功耗也最小,但是它的软件可用性最差。所以,任何一种机器的同构体系结构,不是这里有问题,就是那里有问题,人们想到了异构。异构包含了三种体系结构,而它所要解决的问题是这三种体系结构放在一起到底怎么偶合?任务怎样切分?特别是软件工具、软件编程环节的技术,编程模式也是一大堆问题,也是需要权衡的。

  另一个需要权衡的问题是,要有千万亿次的计算能力,就会对处理器的要求更大,这时功耗的问题就出现了,因为功耗跟处理器的性能成正比。举例来说,BlueGene/L要达到千万亿次,在降主频达到700MHz的时候,40万个处理器如何相联?一位外国学家说的很形象,处理器达到5000个就饱和了,再多处理器是完全没用的。这就需要权衡,进行综合考虑。当然,在功耗与性能的矛盾中还有一个较正面的例子。Clearspeed芯片,96PE,25Gflops(实际),达到250MHz,功耗10W。这是Multi-Gig公司通过升频至THz,采用一种叫作微分传输技术来实现的低功耗。

  处理器的数量与软件扩展能力/效率的权衡。你的算法能否扩展到10万个CPU?软件能否扩展到10万个CBU?应用能否扩展到10万个CPU?是否会有效?现在的多核处理器还没有全局体系的支持。

  还有大规模和局部性之间的权衡,规模越大,局部性越差;创新和习惯之间的权衡;技术和非技术之间的权衡等等。

  无疑,在进行高性能计算机研究的过程中,这种种的权衡问题十分重要,只有找到了适合的方法,才能让高性能之路走得更平更快。

  千万亿次就在你我身边

  江南计算技术研究所研究员

  “九五”和“十五”863计划高性能计算重大专项专家组成员 谢向辉

  千万亿次其实已经不是个新问题了,10年前万亿次出来以后,研究人员就开始了对千万亿次的研究,但事实上,今天的千万亿次与10年前的考虑相比,发生了非常大的变化。

  作者:徐昕

  驱动千万亿次机的动在哪?首先从能源方面看,如何解决能源问题是全球各国非常关注的问题,尤其是高性能计算机、超级计算机有可能帮助社会解决一些问题。比如研究比较多的

等离子物理学里面核聚变的研究,高性能计算机的作用是可以在电站的发电设备建造之前对反应过程进行大规模的模拟,是未来利用核聚变能量的关键,综合计算机能力至少增长1000~10000倍,既1~100Pflops。

  其次是生存环境方面。跟大众日常生活相关的有气候模拟,它可以模拟整个地球生存环境,来预测未来人类生存的环境,有的科学家对地球环境比较悲观,因为人类的发展使得我们的生存环境越来越恶劣,一百年或者更长的时间地球的环境会怎样,能不能对它进行模拟,这也是千万亿次计算机发挥作用的地方。未来5~10年,有效的模拟计算能力需要增长100~1000倍;对计算能力增长的最终需求至少为当前的10亿倍。

  再一个是交通运输。高性能计算解决的主要问题包括安全性、噪音、振动、粗糙度、耐久性、气流和热传输。这些问题需要几小时到几周的时间解决,至少需要在今天的计算能力的基础上提高7个数量级,也就是1000Exaflops。

  对

地震的超级计算模拟结果表明,人类有望预测地震的发生,从而减轻地震带来的危险,未来处理地震数据所需的计算资源大约为1000Pflops。

  第三是在人类认知方面。比如天体物理学,超级计算机模拟是天体物理学的基础,传统上,该领域中的受控实验非常少,甚至不太可能有受控实验,但超级计算机模拟可以使受控实验成为可能,几百年、几千年或者更长时间可以通过计算机的方式来对天体的演变进行模拟,这样就节省了大量的时间。未来这一领域需要1~10Pflops的计算能力,目前来看,这样的能力可以应用于银河系形成模拟、行星形成模拟等。

  第四个是一个非常重要的应用领域,就是国家安全。国家安全是各个国家政府密切关注的,首先是核模拟和核武库管理,核模拟过程已经从二维模型和解决方案向三维模型和解决方案演变,需要计算资源增长1000倍以上。再一个就是,信号情报,超级计算在信号情报任务方面主要有两个用途,情报处理和情报分析,该领域对计算能力的需求是无止境的,计算机速度越快越好。

  以上这几方面的需求,推动了千万亿次机的研究不断发展。目前,除了美国和日本这两个国家十分关注千万亿次计算机外,中国在这方面的投入和产生的效果也是非常明显的,从五年前我国在这个领域默默无闻,到现在已经排名到世界第五或第四。863计划信息技术领域围绕国家重大工程、重大行业应用和经济发展迫切需求,设立了“高效能计算机及网络服务环境”重大项目,这也就使我国进入千万亿次机研究行列,分两个阶段实施:2008年6月,100万亿次计算机2台,突破千万亿次机关键技术;2010年10月,1000万亿次计算机1台。

  让我们来看一下这几年的技术趋势。首先是多核处理器成为主流。这分为两种,一是同构多核处理器,面向通用应用,这类多核处理器继2006年双核之后,2007年高端服务器将以4核处理器为主。另一种,异构多核处理器,面向特定应用领域,具有通用主核和大量异构从核,也称作众核处理器,与专用不同,可编程、应用透明。

  多核时代的到来又给我们带来了新的挑战。在100TF中,处理器核规模大约为1万,能耗规模将达到1MW,占地规模200万。其应用方式是,编程模型继承性多核的透明性,应用规模扩展性,算法新设计,使用成本高达100GF/W,建设成本大约在500GF1平方米。为了应对这些挑战,研究人员提出了一种迈向千万亿次系统的新思路,也就是采用混合结构,即通用多核系统和多用众核的阵列,让一个虚拟的计算资源来联合这些资源,最后出现一种通用计算的环境。

  事实上,能源、环境、国防应用都是千万亿次计算机所要应对的需要所在,为此,千万亿次计算机是关系到国家安全、社会发展、人类健康的战略性资源。尽管研制千万亿次计算机需要面对诸多的挑战,但它只能依靠自己的力量研制。千万亿次系统正以加速度向我们逼近。(n101)

  作者:徐昕

爱问(iAsk.com)



论坛】【收藏此页】【 】【多种方式看新闻】【下载点点通】【打印】【关闭




科技时代意见反馈留言板 电话:010-82628888-5595   欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

Copyright © 1996 - 2006 SINA Inc. All Rights Reserved

新浪公司 版权所有