随着消息技术的极速开展,软件系统的性能需求日益丰盛。为了满足用户的多样化需求,软件开发者始终在系统中引入各种性能模块。其中,裁减性能模块作为优化软件顺应性和灵敏性的关键手腕,遭到了宽泛关注。本文将详细引见裁减性能模块的定义、作用以及关键性。
裁减性能模块是指为了应答特定业务需求或用户共性化需求,在软件系统中额外参与的性能组件。这些模块可以是针对特定行业或场景定制开发的,也可以是通用的性能模块。裁减性能模块能够丰盛软件系统的性能集,提高软件的顺应性和灵敏性,从而更好地满足用户需求。
1. 满足特定业务需求:不同行业、不同企业关于软件系统的需求存在差同性。裁减性能模块可以依据特定业务需求启动定制开发,以满足用户内行业内的不凡需求。2. 提高软件灵敏性:经过引入裁减性能模块,软件系统可以依据用户需求启动灵敏性能,成功性能的开启或封锁,从而到达最佳的实用成果。3. 增强软件竞争力:在竞争强烈的市场环境中,软件系统的竞争力很大水平上取决于其性能的丰盛水平。裁减性能模块作为性能丰盛的补充,有助于优化软件的竞争力。4. 降落开发老本:经过模块化设计,裁减性能模块可以成功复用,降落开发老本。同时,开发者可以依据需求优先级分阶段开发性能模块,从而降落开发危险。5. 繁难保养与更新:裁减性能模块的设计无利于软件的保养和更新。当须要参与新性能或修正现有性能时,只有对相应的模块启动更新或交流,而不须要对整个系统启动大规模的改变。
1. 优化用户体验:裁减性能模块能够丰盛软件系统的性能集,满足用户的多样化需求,从而优化用户体验。在竞争强烈的市场中,良好的用户体验是吸引和留住用户的关键。2. 增强软件顺应性:经过引入裁减性能模块,软件系统可以顺应不同行业、不同企业的需求,从而拓宽软件的运行范围。这种顺应性有助于软件在市场上的遍及和推行。3. 促成软件开发效率:模块化设计是软件开发的关键思维之一。裁减性能模块的设计无利于成功软件的模块化开发,提高开发效率。同时,模块化设计还无利于团队单干,提高开发环节中的沟通效率。4. 降落保养老本:因为裁减性能模块的设计无利于软件的保养和更新,因此可以降落软件的保养老本。当系统须要更新或修正时,只有对相应的模块启动更新或交流,而不须要对整个系统启动大规模的改变,从而节俭保养老本。5. 促成软件翻新:裁减性能模块为软件系统的翻新提供了或者。开发者可以依据用户需求和市场趋向,始终研发和引入新的性能模块,从而推进软件系统的继续翻新。这种翻新才干是软件在强烈的市场竞争中坚持上游位置的关键。
裁减性能模块在软件系统中表演着关键的角色。它不只可以满足特定业务需求,提高软件灵敏性,增强软件竞争力,还可以降落开发老本和保养老本,繁难软件的保养与更新。同时,裁减性能模块还无利于优化用户体验,增强软件的顺应性,促成软件开发效率和软件翻新。因此,在软件开发环节中,正当地设计和引入裁减性能模块是至关关键的。
早在2001年,索尼就对外透露将与IBM合作,由IBM来设计PS3游戏主机的处理器,这枚处理器被命名为“Cell”,也就是中文“细胞”的意思。 双方宣称,Cell的运算能力将达到史无前例的1TeraFLOPS(Floating Operations per Second),也就是每秒执行万亿次浮点运算,这样的性能绝对可达到超级计算机的标准。 在当时,世界上最快的计算机是NEC的“地球模拟器”,它的运算能力为每秒36万亿浮点运算,换句话说,36部PS3游戏机的运算力总和就达到同样的水平。 再者,Cell可支持一项特殊的分布式运算技术,多台PS3连接在一起可以分享运算力,由此获得更高的效能。 在当时,这样的设计理念让人目瞪口呆,外界的第一反应就是,索尼不过是在吊玩家的胃口,而IBM则是在吹牛。 在这之后,PS3和Cell很快被人淡忘,直到2004年,索尼与IBM再度公布了一些关于PS3和Cell的消息,据称Cell已经完成设计,处于样品测试阶段,工作频率达到2GHz,很好地实现了预期设计目标,但这仍只是一条纸面上的简单报告,双方都没有展出任何相关样品供参考。 此时,外界的眼球早已被Intel、AMD之间激烈的竞争吸引,专属于游戏机的Cell处理器自然不可能获得业界的广泛注意。 2005年2月,IBM在“国际固态电路会议(IEEE International Solid-State Circuits Conference,简称为ISSCC)”上发表了数篇关于Cell的技术论文,披露Cell处理器的详细规格参数并展出相关样品,IBM还宣布 Cell已进入到大规模量产阶段,将在未来几个月内提交给索尼。 就这样,一款媲美超级计算机的革命性微处理器由此到来。 在下面的文字中,我们将对Cell 处理器进行深入详尽的技术分析,倘若读者有耐心读完本文,也许会发现今天我们津津乐道的X86处理器在思想上落后了数个时代。 在介绍Cell的逻辑架构之前,我们先来看看Cell的物理规格:Cell集成了2亿3400万个晶体管,它采用IBM的90纳米SOI、Low -K工艺制造,核心面积为221平方毫米,芯片规模与Intel的双核Pentium D相当,两者的制造成本处于同一条水平线上。 在逻辑上,Cell处理器基于一个“Power处理单元(Power Processor Element,下面简称为PPE,由PowerPC970简化而来)”,它可以支持SMT虚拟多线程技术,同步执行两个不相干的线程。 此外,Cell内部还拥有八个基于SIMD的协处理器(Synergistic Processor Element,以下简称SPE),可支持多达十条线程的同步运行。 另外,Cell还整合了 XDR内存控制器,可配合25.6GBps带宽的内存系统,而它的前端总线也采用96位、6.4GHz频率的FlexIO并行总线(原名称为 “Redwood”,RAMBUS公司所开发),这也是有史以来速度最快的计算机总线。 所有的这一切都让人觉得非常不可思议,如果我们将Cell同X86 处理器对比,便会发现二者在设计上没有半点相似,Cell不同寻常的另类设计也引起外界的普遍疑虑:它的工作频率能到什么水平?实际性能又比最新的X86 处理器快多少?Cell能够达到预期设计目标么?如果你心里也有类似疑问,我们的建议是将你之前所了解的X86处理器知识全部清空,然后重新来认识Cell。 我们知道,目前X86处理器的频率最高纪录是3.8GHz,由Intel波塞冬核心的Pentium 4 E所创下,本来Intel计划让它的频率突破4GHz,但受到高功耗和稳定性方面的困扰,不得不宣告失败,要更进一步提升频率也被业界认为难以实现。 然而,Cell的工作频率轻易突破了4GHz,并将达到4.6GHz的新高,这显然超出X86业界所能理解的范围。 更不合常理的是,X86处理器的高频率必须以牺牲指令效能为代价,高频未必就能带来高效能(Pentium 4系列的高频低能人所共知),而Cell的实际运算性能竟达256Gigaflops,也就是每秒可执行2560亿次浮点运算,IBM最初的设计是将四枚处理器整合一体,这样就可获得每秒万亿次浮点运算的超高性能。 如果你对此没有感性的认识,我们不妨举些例子作为对比:Pentium 4 E 3.8GHz的SIMD效能为15Gigaflops,这也是X86处理器目前能达到的最高水平,但这个性能只有Cell的十七分之一,两者完全不具可比性,尽管它们的物理参数和制造成本处于同一水平线。 IBM十分自豪地将Cell称为“单芯片超级计算机”,这也很好实现了预期设计目标。 Cell所具有的高效能无疑得益于高度优化的Power架构。 Power是IBM为超级计算机所创立的RISC指令系统,而RISC架构具有与生俱来的高效性,处理器结构精简,技术上明显优于X86。 正因为这一点,几乎所有的超级计算机系统都隶属于RISC体系,而我们所津津乐道的X86,实际上仅仅局限在PC环境,只是因为PC与人们工作生活联系紧密,故广为人知(关于RISC与CISC的对比,本刊上期《未来处理器设计思想前瞻》的文章中有非常详尽的阐述,有兴趣的读者可自行参考,这里就不再赘述)。 不过,RISC架构显然不是Cell拥有超高性能的唯一原因。 如果我们将PowerPC 970处理器(苹果称之为“PowerPC G5”)与Cell对比,大家还是可以发现两者的性能差距极其悬殊:PowerPC 970的晶体管数为5800万个,4枚PowerPC 970的晶体管数总和与一枚Cell相当,但配备双PowerPC 970处理器的Xserve G5仅能提供9.0 Gigaflops的运算力,远无法与Cell相比,尽管它们在设计架构上同属于Power体系。 实际上,Cell的高效能很大程度上来自于其新颖的设计思想:主处理器与协处理器各司其职,内核设计精简高效以实现高频运作,而运算单元则采用128位并行结构,大家可以从下面的分析中逐渐了解到这一点。 高度弹性的设计与分布式计算是Cell除高性能之外的两大亮点。 IBM希望Cell可适用于从嵌入式设备到大型计算机等几乎所有计算设备中,所以将Cell设计为一个通用的处理器平台。 根据不同的需求,Cell可以对处理内核的数量进行任意裁减,如针对嵌入式设备的产品只有单个核心,且工作在较低的频率上以实现较低的能耗;针对便携电脑和桌面PC的版本,可使用与PS3游戏机一样的标准Cell,或者对SPE数量进行适当裁减;如果要用于工作站/服务器系统,IBM可以将两枚Cell处理器直接集成在一起以获得更高的效能;若要用于大型计算机,Cell则可配置成包含四枚独立处理器的“MCM模块”,此时它具有每秒万亿次浮点的运算能力,这也是IBM当初承诺的标准。 而支持分布式计算技术更具革命意义,Cell拥有一条超高速度的FlexIO芯片连接总线,基于Cell的不同计算设备可以借此联成一体,实现运算力与内存资源的分享。 网络上的设备越多,所拥有的运算力就越强大。 此时,Cell处理器就好比是该计算网络上最基本的构成细胞,而这项机能将带来一场天翻地覆的计算革命。 想想看,任何人都可以在家庭中轻而易举制造出属于自己的超级计算机,这无疑意味着计算力的真正解放。 支持多操作系统运作是当前X86处理器的热门技术,其实IBM在几年之前就将该技术应用于Power架构处理器中,Cell理所当然继承了这项特性。 另外,Cell具备强大的自主纠错能力—IBM实验室的科学家们一直致力于研究真正可靠的计算,他们希望计算机能够具备故障自动恢复功能,实现真正的 “永不宕机”运作,而这项成果现在也被用于Cell身上。 在运行过程中,Cell可自动检测所处理的数据是否遭到破坏,如果数据出错,Cell会借助某种机制将它自动恢复为正常的状态,从而避免产生错误的结果或令系统停机。 在下面的文字中,我们将向大家详细分析Cell的设计以及应用模式,从中你可以对Cell有更深地了解。 前面我们介绍过,Cell处理器包括一个PPE处理单元、八个SPE协处理器、一个XDR内存控制器以及FlexIO接口,而Cell拥有高性能的关键便在于PPE与SPE的设计。 PPE/SPE:针对“简单任务”而设计。 PPE处理单元是Cell的控制与运算中枢,它应该是以IBM的Power 4处理器为基础进行设计的,可支持同步多线程技术。 该处理单元内置了32KB一级缓存和512KB二级缓存,其规格与同出一脉的PowerPC 970处理器极其类似。 而在Cell中,真正负责浮点运算的应该是八个SPE协处理器。 图5所示是SPE的逻辑结构,SPE由4个负责浮点运算的处理单元、4个负责整数运算的处理单元、128bit×128结构的寄存器和256KB局部缓存构成,它实际上就是一个完整的运算核心。 根据IBM所公布的资料,我们获悉SPE的流水线长度为18级,这一点与X86处理器也非常不同—流水线越长,处理器提升工作频率就越容易,反之就越困难。 20级流水线的 Northwood Pentium 4止步于3.2GHz,31级流水线的Prescott核心也不过到达3.8GHz,而Cell以18级的短流水线却实现4GHz以上的高频运作。 设计者对此作出详细的解释:X86处理器必须完成大而全的运算功能,运算逻辑往往被设计得非常复杂,这也导致其频率提升非常困难;而Cell在基础架构上执行简单化的计算思想,每一个复杂的任务都可以被分解为多个简单的基础任务,Cell中的SPE就专门针对这些基础任务所设计,这样,它就可以在保持高效的同时拥有简单得多的逻辑结构,既然逻辑构成简单,实现高频率运作就没有什么悬念。 从这里也可看出,Cell与X86处理器最大的不同,还是在于它们对计算任务的不同理解。 尽管总线及寄存器都是128位结构,但SPE内的浮点单元和整数单元其实都只有32位,只是IBM通过4路并行运算来获得128bit SIMD的效果,从外部看来,SPE便相当于一个可执行128bit指令的处理单元。 SPE内的浮点单元和整数单元各自拥有三条128bit宽度的输入总线和一条128bit宽度的输出总线,二者以全双工模式运作,数据输入/输出操作可同步进行。 大家应该也发现这是一套不对等的方案,输入总线的带宽三倍于输出总线,原因在于计算所需的数据总量总是比运算的输出结果要多得多,总线宽度不同在设计上其实非常科学。 而借助这两条总线,SPE协处理器的整数/浮点运算单元再与一组包含128个、宽度为128bit的寄存器阵列联结在一起,该寄存器阵列又通过一对全双工运作的、128bit总线同本地缓存(Local Store)相连—每个SPE协处理器都拥有256KB本地缓存,8个SPE就一共拥有2MB缓存,再加上PPE处理单元的512KB二级缓存,Cell 处理器总共拥有超过2.5MB容量的缓存单元,对于一款拥有超级计算效能的处理器来说,如此低的指标同样令人感到诧异。 分析完PPE与SPE协处理器的内部设计,我们再来看看它们是以何种方式组成Cell的。 参见前面的图4,我们可以看到Cell内部有一条 768bit位宽的“EIB单元互联总线环(Element Interconnect BUS Ring,EIB Ring)”,它实际上是一个强大的内部总线控制逻辑—Cell内所有的功能单元都通过EIB总线环连接在一起,包括PPE、八个SPE、XDR内存控制器以及外部总线接口,它们所采用的无一例外都是全双工的128bit连接总线。 若Cell工作在4GHz频率上,Cell内部的各个功能单元便都拥有 4GHz×128bit/Hz×2(全双工)÷8Byte/bit=128GBps带宽,这样的数字显然是非常可观的。 我们很容易能根据这些参数计算出Cell拥有的运算效能:每个SPE协处理器拥有4路并行的整数/浮点单元,一个时钟周期可执行两个运算周期(类似DDR效果、技术未明),每个运算周期又可执行4次32位浮点运算;每个Cell拥有8枚SPE协处理器,它的工作频率假设在4GHz,此时 Cell所具有的浮点效能就是2×4×8×4GHz=256Gigaflops,这应该很好理解。 与常规的双核处理器不同的是,Cell内的1个PPE和8个SPE具有相当强的独立性。 其中,PPE处理单元的任务是运行操作系统,这个任务对于一个结构类似 PowerPC 970、频率高达4GHz且可支持双线程运作的处理核心来说简直不费吹灰之力。 但除了操作系统外,PPE不管任何的事情,应用程序相关的线程运算完全由 SPE协处理器运行。 如图6所示,我们可以看到多个应用程序的线程会被平均散布到各个SPE中,整套系统负载均衡、设计得非常科学。 而这种纵向结构的多核心设计同X86业界鼓吹的双核处理器截然不同,不论是Pentium D、Yonha还是AMD的双核心Athlon 64,它们的每个处理内核地位对等、每个核心都可以独立完成全部运算,所体现的是一种大而全的计算思想。 由于芯片设计越来越复杂,它的工作频率就不得不走了下坡路,Intel当年执著于高频制胜的策略,结果落后于对手,业界普遍认为追求高频率的做法没有前途。 而Cell处理器开辟出前所未有的新思路:每个处理内核专注于自己的任务,彼此相互依赖、相互协作,针对任务的简单化也使得每个内核都可以被设计得精简高效,工作频率也轻易达到X86处理器无法企及的高度,最终实现了媲美超级计算机的惊人性能。 而在相互协作的同时,Cell内的各个SPE协处理器又保持着高度独立性,除了完成本机的计算任务外,SPE 还可以接受来自Cell计算网络中其他设备的计算请求,并执行相关的计算任务,所得结果再通过网络传输给任务发起者。 换句话说,SPE协处理器可以在基于 Cell的计算网络中作平台无关的无缝漫游,网络上的任务可以被均匀分散到所有的Cell处理器上,并以最佳方式在最短的时间内完成。 在看完上述分析之后,你一定会以为Cell将是一个功耗大户,在看到详细资料之前,笔者也是抱这种态度。 IBM所公布的资料再度让人大吃一惊,当工作频率为4GHz时,每个SPE协处理器的工作电压高于1.1V,但其功耗仅仅只有4瓦。 若频率降到3GHz,工作电压只需要0.9V,此时其功耗只有 2瓦。 如果将频率降低到2GHz,每个SPE的功耗仅有区区1瓦。 那么,Cell内所有SPE协处理器的功耗总和最高也不过4瓦×8=32瓦。 至于PPE 处理单元的核心部分,功耗水平也会控制在很低的水平,合乎逻辑的估计是Cell运算部分的功耗水平会在40瓦左右,即便加上缓存单元整体功耗也可控制在较好的水平上。 回过头再来看看功耗将高达130瓦、性能不到Cell十分之一的Pentium D,大家会有什么感受?考虑到实际应用,Cell的低功耗并不令人吃惊。 Cell本来就是为PS3游戏机所设计,而游戏机体积狭小,对芯片的功耗指标颇为敏感,指标过高将给散热带来难题且会产生较高的噪音,这是玩家们绝对无法承受的。 在2006年,IBM将采用更先进的65纳米技术来制造Cell,届时它将具有更加出色的功耗水平,而低功耗也为Cell的广泛应用奠定了良好的基础,将它用于嵌入式设备、笔记本电脑、桌面PC还是工作站系统中都没有任何问题,IBM今后所需要关心的,应该是操作系统和应用软件方面的资源配合。 *注释:由于SPE不能脱离PPE作为单独的物理核心运行,所以严格上来讲Cell是一个独特的单核心处理器CELL处理器终止开发德国网站Heise Online证实(德语)IBM停止了Cell处理器的未来开发。 Cell处理器一度被认为是一项革命性的产品,但实际应用证明它并不比竞争对手突出。 IBM主管Deep Computing的副总裁David Turek证实PowerXCell 8i是最后一款Cell处理器。 当然停止芯片设计并不意味着它的死亡,目前多数的Cell芯片主要由东芝公司生产,使用在索尼公司的PS3主机上。 Sun 曾经指出,3.2GHz的Cell处理器还没有1.4GHz的SUN Niagara处理器快。 有评论称,它并不比GPGPU强大,而灵活性又不如真正的CPU,IBM放弃它并不让人意外。
标签: 裁减性能模块、 裁减性能是什么、 四、本文地址: https://pc.zdmlj.com/article/b11f1652e3b127123b99.html
上一篇:mcgs中的实时数据库与其它各局部的相关是怎...