新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     >>计算机科学论坛<<     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> It is the theory that decides what can be observed. - Albert Einstein
    [返回] 计算机科学论坛计算机理论与工程『 理论计算机科学 』 → 高端诱惑——高性能计算来龙去脉 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 3013 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: 高端诱惑——高性能计算来龙去脉 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     北剑 帅哥哟,离线,有人找我吗?双鱼座1985-3-5
      
      
      等级:大二(研究汇编)
      文章:37
      积分:230
      门派:IEEE.ORG.CN
      注册:2006/8/7

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给北剑发送一个短消息 把北剑加入好友 查看北剑的个人资料 搜索北剑在『 理论计算机科学 』的所有贴子 点击这里发送电邮给北剑  引用回复这个贴子 回复这个贴子 查看北剑的博客楼主
    发贴心情 高端诱惑——高性能计算来龙去脉

    上世纪90年代以来,以高性能计算机为基础的计算科学得到了长足的发展,它与理论科学和实验科学相辅相成、彼此印证,成为人类科学研究必不可少的方法之一。在许多工业领域,如汽车、航空航天器的设计制造,石油勘探、地震资料处理及国防等,科学计算已经成为首选研究方法。在教育、科研领域,高性能计算有着更广泛的施展空间。与国际高性能计算机的使用相比,中国的高性能计算工业应用程度不高,其中以石油勘探/地震资料处理最为成功(但现在越来越多的ISV支持PC服务器集群,使高端市场受到很大冲击)。目前中国的高性能计算市场更多地集中在教育(高校)和科研(中科院、气象单位等)领域。同时,不可忽视的是网格计算的市场。据中科院专家介绍,我国从2003年开始的3~5年中,将在全国范围内建立教育网格和国家网格两大网格系统。

        CPU、主频、峰值速度

        目前RISC芯片是高性能计算机的主流芯片,其中以IBM的Power处理器为代表,它有长期、持续的发展计划,而其他厂商正逐渐放弃对RISC芯片的发展,转向EPIC类型的Intel Itanium产品。与RISC芯片相似,EPIC芯片结构的设计目标也是指令的并行化,以获得更优的性能,不同的是,EPIC芯片由编译器去决定如何将指令并行化,以何种方式、何种顺序执行指令,然后交给硬件去执行,而RISC系统则直接将指令交给硬件,由硬件去决定如何做并行、如何做Pipeline。所以两种指令系统存在本质的差别,我们不能期望一个具体的应用程序不经过优化、再编译就能在两种系统上获得同样高的性能。同时,与RISC相比较,EPIC性能的发挥更依赖于编译器的设计。

        另外一个经常被用来评价计算机性能的简单指标是峰值速度。计算机的峰值速度通常是指其理论峰值速度,其计算公式是:

        理论峰值速度(亿次)= MHz × 每个时钟周期执行浮点运算的次数 × CPU数目/108

        其中MHz是指CPU的主频,每个时钟周期执行浮点运算的次数是由处理器中浮点运算单元的个数及每个浮点运算单元在每个时钟周期能处理几条浮点运算来决定的。以IBM Power4为例,每个Power4的处理器有两个浮点运算单元,每个浮点运算单元在一个时钟周期内可以同时处理一个加法和一个乘法的操作。所以如果处理器的主频为1.7GHz(Power4+),那么该处理器的峰值速度为1.7G×2×2=6.8Gflop/s,或68亿次/秒。

        峰值速度在一定程度上能够反映处理器的性能,但并不能代表计算机的实际运算能力。为此许多组织试图用一些标准的程序来测试计算机的运算速度,其中LINPACK以其使用简单、适用性强等特点被广泛地用于评价计算机的实际峰值运算能力。虽然这些指标并不反映给定系统的全部系统性能,但可以作为对系统理论峰值性能的一个修正。

        存储结构

        CPU是数据处理的核心,数据的供应则是由存储部件完成,存储部件的性能在某种程度上决定了系统的整体性能。

        现在的计算机大多采用多级存储结构,即高速缓存(Cache),内存(Memory),硬盘(Hard Disk)及外部设备(如磁带库等)。按从前到后的顺序,容量是递增的,而速度和成本则是递减的。其中高速缓存又被分成一级高速缓存(L1)、二级高速缓存(L2),有的系统会采用三级高速缓存(L3)。之所以采用这样的结构,主要是从降低成本的角度考虑。到目前为止处理器的发展基本上仍遵循着摩尔定律,即每18个月处理器的速度增加一倍。但是对于存储设备来说,无论是速度还是容量都无法跟上这种步伐。经过多年的发展,处理器与存储设备之间的性能差异越来越大,使得如何协调处理器与存储设备的关系,以构建一个平衡的计算机系统成为计算机设计的首要问题。

        体系结构

        大型计算机通常分成5种实际物理机模型:并行向量处理机(PVP)、对称多处理机(SMP)、大规模并行处理机(MPP)、工作站集群(COW,Cluster Of Workstation, 或简称Cluster)及分布共享存储器(DSM)多处理机。PVP系统含有为数不多、功能强大的定制向量处理器(VP),定制的高带宽纵横交叉开关及高速的数据访问。但是这种系统通常不使用高速缓存,而是使用大量向量寄存器及指令缓存,使得该系统对程序编制的要求较高。只有那些充分考虑了向量处理特点的程序才能在该系统上获得较好的性能。另外,由于价格昂贵、难于管理等原因,这种类型计算机的应用主要集中在一些国家大型关键部门。MPP的计算机由于价格偏贵、灵活性不好等原因,也没有得到较好的推广。在国内高性能计算的市场上,现在常见的机型大部分属于SMP、DSM和Cluster。

        SMP系统采用商品化的处理器,这些处理器通过总线或交叉开关连接到共享存储器。象IBM p系列服务器、惠普的Superdome、Alpha的ES/GS系列等都属于SMP结构的机型。DSM的机型中,存储器物理上分布在不同的节点中,但通过硬件和软件方法实现内存的统一编址。市场中SGI的Origin3000、Altix3000系列、SUN的Fire15K等都属于这种结构。Cluster结构是近年来发展势头最为强劲的体系结构,目前国内的厂商在这种架构上发展高性能计算的很多,这类机型的技术起点比较低,用户甚至可以自己将一些工作站或微机通过以太网连接起来,配以相应的管理、通信软件来搭建Cluster。

        曙光是最早发展集群架构的高性能计算的国内厂商,经过了曙光1000/2000/3000到目前的曙光4000系列产品,已经将集群产品发展得比较成熟。

        其自主研制的一些定制的集群产品(如气象行业专用的集群产品、石油行业专用的集群产品等),其自主研发的集群监控技术、集群管理技术、网格零件等等,都使得其在高性能计算的舞台上越发英姿飒爽。

        联想在与Intel的紧密合作中,也将基于安腾2的高性能计算平台搭建得如火如荼。7月,联想在国家863计划的支持下,与中科院网络中心合作,为中科院研制一套基于1024颗全新安腾2处理器、256个节点的集群式高性能计算机系统,该系统将成为国家“863”计划重大专项建设的“国家网格”主结点的主要装备,也是中国科学院“十五”信息化建设超级计算环境建设与应用项目的一项重要组成部分。

        从编程角度讲,可以将所有的计算机分成共享内存的计算机(PVP,SMP,DSM)和分布式内存的计算机(MPP,Cluster),相应地可以采用不同的并行编程方法。目前主要的并行编程方式有:消息传递模式(MPI,PVM等),共享内存并行模式(OpenMP,pthreads)及两种模式同时使用的混合模式。共享内存并行模式编程相对较为简单,程序员不用考虑数据在内存中的位置,进程管理及同步操作由系统完成。但是用这种方式编制的程序通常并行效率不高,因为它属于细粒度并行,主要针对循环进行并行处理。另外共享内存并行模式只能运行在共享内存类型的计算机系统上。消息传递的并行方式虽然是在分布式内存的计算机结构基础上发展而来的,但是几乎所有类型的计算机都支持这种并行模式,因此更具通用性。消息传递方式的并行属于粗粒度并行,程序员负责进程管理、消息传递及同步,并行的工作量要大于共享内存并行模式。但同时程序员可以控制的也更多,可以通过仔细考虑任务分配,并行算法等方式对程序进行优化,因而获得较高的并行效率。国际上采用消息传递方式的应用软件远远多于采用共享内存并行模式的应用软件。国内的高性能计算用户也大多采用消息传递的并行方式开发自己的应用程序。

        应用软件与性能

        高性能计算机是一个复杂的系统,很难用几个参数或指标对其进行性能评价。为此开发了多种标准测试程序试图对高性能计算机进行评定,但这些测试指标通常都是对计算机某一方面进行测试,而不能全面地说明系统的整体性能。如LINPACK侧重于系统浮点峰值运算能力的测试;SPEC CPU2000测试的是单CPU性能及作业吞吐能力;SPEC OMP2001的结果说明了共享内存的计算机使用共享内存并行模式(OpenMP)的并行效率和加速比;STREAM试图对系统的数据访问能力(带宽和延迟)进行定量地评价等。高性能计算用户的应用千差万别,对计算机系统的要求也是各种各样。所以评价高性能计算机性能的最好方法是用用户自己的应用程序去进行实际的测试,或找到相似应用的商业软件的标准测试结果。这样的评价会更有针对性,也比较客观。比如在制造行业中,常常需要对汽车在高速行驶情况下的气动性能、飞机发动机内气体流动等情况进行分析。相应的商业流体力学分析软件有FLUENT、STAR-CD、POWER-FLOW等。


       收藏   分享  
    顶(0)
      




    ----------------------------------------------
    海到尽头舟作岸,山登绝顶我为峰。

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2008/6/9 18:10:00
     
     GoogleAdSense双鱼座1985-3-5
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 理论计算机科学 』的所有贴子 点击这里发送电邮给Google AdSense  访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/5/3 17:41:57

    本主题贴数1,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    46.875ms