账号:
密码:
最新动态
产业快讯
CTIMES / 文章 /
积木化、跳岛式运算时代来临
丛集、网格、双核、多核

【作者: 陳隱志】2005年07月05日 星期二

浏览人次:【13624】

「积木化、跳岛式」乍听之下是笔者在故弄文字玄虚,但这确实是目前运算领域发展的最新趋势,更简单来说就是一般常言的模块化运算、分布式计算(Distributed Computing)、平行运算(Parallel Computing),与此相关所常提及的名词则有丛集(Cluster)、网格(Grid)、双核(Dual Core)、多核(Multi Core)。


或许读者尚难体会这些新词语间有何共通点,且让笔者以技术演化观察的角度,逐一为各位说明各种新技术的成因,以及各技术如何走向理念性的汇集。


指令级、芯片级的分拆加速运算

一人要十小时才能完成的事,若两人同时进行则可缩短至五小时,这就是平行处理的概念,将完整事务以不违背正确性、不矛盾冲突为原则进行多份拆解,然后多份同时执行以求加速,许多运算新技术、新架构都是因此而来。


例如超纯量(Superscalar)架构,即是在一颗CPU内设置两组以上的执行管线,让原本要前后依序执行的指令,在分析无运算相依性后,同时交付给两个执行管线一起执行(如电影售票窗口从一个变成两个),以此来加速,这也是Pentium在效能上能大幅超越80486的主因。


不过,程序指令不可能随时保持无前后相依性,一旦前后相依(来源相依或结果相依)就无法平行执行而需要恢复成排队式的依序执行(恢复成单一窗口),为了提高平行执行的运用机会而有了乱序执行(Out Of Order Execution),在发现相依后则开始进行相依排解,以不影响运算结果的方式将指令执行顺序及计算方式加以改变(这时会搭配运用缓存器重新命名Register Rename技术),如此就能保持双线同时执行。


当然!Superscalar也可以持续平行化设置,如过去的RISE mP6处理器即具有三个执行管线,比Intel Pentium、Cyrix 6x86的两管线还多,但是业界并没有以持续增加平行管线的方式来加速,因为相依排解有其限度,程序指令要同时能三线、四线执行的机会极低。


从指令执行层面进行平行拆解加速已到极致,因此有人提出更提前性的相依排解(平行化),即是在程序开发过程中就做到最高程度、优化的相依性拆解,既然指令执行时的相互关连性降至最低,CPU就可以同时执行更多组指令,以此种概念设计的CPU有Intel的Itanium、Transmeta的Crusoe/Effineon等,此种技术学名上称为VLIW(Very Large Instruction Word),不过HP与Intel对此另有其称:EPIC(Explicitly Parallel Instruction Computing),但意义相近。


《图一 Transmeta的Effineon处理器与前一代的Crusoe处理器相同皆采VLIW架构,但Effineon将指令加载的平行宽度再提升,从128-bit增加至256-bit》
《图一 Transmeta的Effineon处理器与前一代的Crusoe处理器相同皆采VLIW架构,但Effineon将指令加载的平行宽度再提升,从128-bit增加至256-bit》

<数据源:Transmeta.com>


但是,VLIW作法的缺点是要从程序编译过程中就要改变,且必须搭配能将指令达到最透彻平行化拆解的优化编译程序(Compiler,软件),才能完全发挥VLIW架构的功效,现有以传统方式编译完成的程序无法获得发挥,必须用优化编译程序重新编译(Recompile)才行。或者是运用实时性的动态转译器(软件),计算机执行时转译器常驻于系统内(多在内存中),把即将要执行的程序立即进行平行拆分的转化动作,再送给VLIW CPU执行,此种转译软件目前常见的有Transmeta的CMS(Code Morphing Software)或Intel的IA-32 EL(IA-32 Execution Layer)。


《图二 Transmeta的VLIW执行架构设计是每个指令32-bit宽,Crusoe一次能加载四个指令,而更先进的Effineon可加载八个》
《图二 Transmeta的VLIW执行架构设计是每个指令32-bit宽,Crusoe一次能加载四个指令,而更先进的Effineon可加载八个》

<数据源:Transmeta.com>


Transmeta的VLIW执行架构设计是每个指令32-bit宽,Crusoe一次能加载四个指令,而更先进的Effineon可加载八个

系统层面的分拆加速:SMP、NUMA


平行加速的作法不仅于此,RISC、UNIX阵营也有其作法,即是朝SMP(Symmetric Multi-Processing)对称性多处理的架构发展,事实上相对于SMP的是ASMP(ASymmetric Multi-Processing)非对称性多处理,两者的差别是ASMP在运算(CPU)、储存(Memory)、通讯(I/O)等各系统环节都设置执行单元以求加速,但经实际证明成效不彰,而SMP则只在运算(CPU)环节不断增加执行单位,此方式成为今日高阶服务器的主流架构。


SMP作法是让一部计算机拥有多颗CPU,而程序如何拆分、派送给各CPU执行是由OS负责,且CPU间若需要协调沟通是透过内存来达成,这也是多线程(Multi-Threading)的执行架构,一颗CPU可处理一个线程。


多线程作法原本不适合PC,因为PC程序多数是以单线程的方式编译而成,即便在多线程的系统内执行也无法加速(仅在一颗CPU上执行,其余闲置),所以SMP架构初期只在大型、高阶的系统上使用(如UNIX Server上的软件),然而在Java程序流行后,多数程序都已改采多线程的方式开发、编译,所以SMP作法在PC上也日渐可行。


更平心而论,无论Superscalar、VLIW、SMP等都需要倚赖编译程序的支持才能更有效发挥,只是倚赖程度的多寡有别,Superscalar倚赖最小、VLIW倚赖最高、SMP居中。此外操作系统的良善与否也会多少影响已进行多线程编译后程序能否在SMP硬件系统中彻底发挥。


然而SMP也有其困扰,SMP架构无论有多少颗CPU,都维持着单一操作系统、单一内存,内存成为整体系统的效能瓶颈,为改善效能CPU与内存间实行Crossbar方式的连接,之后衍生出了NUMA(Non-Uniform Memory Architecture)架构,将物理内存进行多块拆分配属,但逻辑上仍维持以单一的操作系统在运行。此外,为了降低CPU对内存的存取,现今的CPU都内建着L1、L2 Cache,使得CPU间的沟通不见得非透过内存不可,透过L2 Cache亦是可行,CPU间透过L2 Cache沟通信息,会依循MESI协议(MESI cache coherency protocol)来运作,将Cache分区块进行四种运用状态(Modified、Exclusive、Shared、Invalid)的标示以利沟通,且在L2 Cache有写入改变时,会自动对应改变内存的数据,或利用离峰时间再进行改变,立即改变者称为Write Through,离峰时改变者称为Write Back,今日为求系统高效能多半选择Write Back设计。


此种用Cache沟通取代内存沟通的方式被称为cc-NUMA(Cache Coherent NUMA)架构,不过这只是沟通方式的改变,运作本质上依然是NUMA架构。既然CPU间改透过Cache沟通,


《图三 IBM的Power4开启双核追随风,往后的Power4+、Power5也一样具备双核设计》
《图三 IBM的Power4开启双核追随风,往后的Power4+、Power5也一样具备双核设计》

IBM的Power4开启双核追随风,往后的Power4+、Power5也一样具备双核设计


<数据源:IBM.com>


在IBM推出双核后,其他业者也加紧仿效学习,2004年HP推出双核的PA-8800(两颗PA-8700核心),Sun推出双核的UltraSPARC IV(两颗UltraSPARC III),而今AMD、Intel也推出双核的Xeon、Opteron,甚至全系列x86芯片(指IA-32、AMD64、EM64T)都在未来逐一落实双核化设计。双核、多核是运用制造工艺而有的加速作法,而Intel则在设计上构想出另一种平行加速技术,


由于Intel工程师发现CPU内除了缓存器最忙碌外,核心的相关单元与资源是处在相对闲置,为了让相关单元与资源更有效的利用,因此在CPU内设置了第二套缓存器组,如此在核心资源不冲突时两套缓存器可同时运算执行,以此获得加速,此称为HyperThreading(超线程),具此种概念技术的除了Intel CPU外还有IBM的Power5,IBM称为Multi-Threading,且在设计增加了核心资源用量侦测、调度,以及冲突排解等功能,使此种技术获得更有效发挥[1]。不仅信息系统需要双核,就连绘图系统、通讯系统、储存系统也有需求,例如nVIDIA提出的SLI(Scalable Link Interface),以及ATI提出的Cross Fire,都是运用两颗以上的GPU(Graphics Processing Unit)协同分工所成就的更高加速法,而PMC-Sierra所推出的RM11200网络处理器(Network Processor),内部也是由两个MIPS64核心所构成,该芯片可用于Switch、Router或储存设备中。


《图四 PMC-Sierra的RM11200双核芯片,内有两个MIPS64(64-bit)核心,此类运用不需浮点运算,所以RM11200内也无浮点运算单元》
《图四 PMC-Sierra的RM11200双核芯片,内有两个MIPS64(64-bit)核心,此类运用不需浮点运算,所以RM11200内也无浮点运算单元》

PMC-Sierra的RM11200双核芯片,内有两个MIPS64(64-bit)核心,此类运用不需浮点运算,所以RM11200内也无浮点运算单元


<数据源:PMC-Sierra.com>


双核成功后,多核计划也在各家的规划中,Sun方面对于多核计划称为高通量运算(Throughput Computing),过去已运用初步技术研发出MAJC(Microprocessor Architecture for Java Computing,谐音Magic)芯片,并用于Sun自身的XVR-1000、XVR-4000等专业工作站级绘图卡中。

SMP强调一致性集中,MPP、Cluster强调宽松


谈论了这么多,其实都是想办法在单一运算系统上力求平行加速,不是在CPU内想办法平行执行,就是希望用多颗CPU来平行执行,即是在芯片或电路板的层面推展平行化,然而还有一种平行化手段,那就是将多部计算机进行串连,将工作拆分成数份后交付给多部计算机同时运算,一样可以加速获取答案,此即是平行处理,过去此方式的架构代表为MPP(Massively Parallel processing)巨量平行处理,但近年来则又多了Cluster(丛集)可用。


《图五 Cray的XT3超级计算机使用MPP架构,单一系统可达200~3000颗CPU,XT3的CPU为AMD Opteron,MPP操作系统为Cray自有的UNICOS/lc》
《图五 Cray的XT3超级计算机使用MPP架构,单一系统可达200~3000颗CPU,XT3的CPU为AMD Opteron,MPP操作系统为Cray自有的UNICOS/lc》

<数据源:Cray.com>


MPP其实是资源共享度低于SMP的架构,而Cluster的设计又比MPP更宽松,连硬盘部分也不共享,多部独立计算机仅以I/O相连,如此有优点也有缺点,优点是各部计算机的规格、组态不必一致性要求,串连中的A计算机可以是单CPU的系统,B计算机则可以是四颗CPU的系统(若B计算机未参与丛集串连则等于是一部SMP架构的计算机),缺点是各计算机间的沟通速度不如MPP,想以追加计算机数目的方式来获得平行效能扩展,其扩展瓶颈经常发生在I/O传输上。


不过,Cluster是今日的新主流,理由无他,由于x86服务器的价格效能比不断飞跃成长,以多部x86服务器串连而成的Cluster也能获得低廉且优异的效能,此优点远胜其缺点,因此Cluster逐渐受到重视。


但是,现阶段推展Cluster也一样有隐忧,情形与VLIW架构完全相同,程序若不能重新优化编译就不能在Cluster上发挥功效,所以Cluster初期都只在科学研究、重度工程运算等高效运算(High Performance Computing;HPC)领域中使用,然而商务运算界也希望重用Cluster的平价、高效优势,试图在Cluster系统上建立商务执行平台与应用程序,如Oracle提出的RAC(Real Application Cluster)即是最明显的例子。


网格运算:更宽松的系统型态、连接型态

Cluster在系统相连性上已是比MPP宽松,但如今又有比Cluster更宽松的作法,此即是网格运算(Grid Computing亦有人称棋盘式运算),Cluster必须是各机都实行相同的操作系统,且各独立计算机间的连接拘限于区域内,即是用Gigabit Ethernet(Gigabit级以太网络;GbE)网络、Infiniband、或Fibre Channel(光纤信道;FC)等方式相连,必须在数公尺至数百公尺内完成联机,而目前多半在数十公尺。


至于Grid Computing,强调的是「异质、分散」,所谓「异质」即是各计算机可以使用不同的硬件及操作系统,以及各计算机间可以使用不同的方式相连,如A计算机连至B计算机用Ethernet(局域网络),B连到C用Internet(广域网),C连到D用WiFi(无线局域网络),而既然可用各式网络相连,也就不拘限在同一机房内连接,A计算机在甲地,B计算机在乙地,并用Internet相连,也依然可视为同一运算系统,这即是所谓的「分散」,所以Grid Computing也被人称为异质分布式计算[2]。


Grid化的好处正是不拘泥地点与系统型态,最宽松的连接却也带来另一种好处,由于今日Internet无远弗届,有成千上万的计算机与Internet相连,如此即可视为一个庞大、连续的运算体,并在此运算体中几乎无限制的取用运算资源、储存资源。


最有名的例子就是Berkeley大学的SETI@HOME计划,该大学运用电波望远镜来寻找外层空间是否有生物(寻找外星人),将电波发射至外层空间,然后接收电波的反射波,再对反射波进行分析运算来求取答案,而分析运算需要大量的高阶计算机才能及时求出结果,不幸的是计算机申购预算遭删,所以该计划的研究员就自行撰写一个屏幕保护程序(Screen Saver),号召网友下载安装,如此安装者的计算机一旦闲置至屏幕保护程序执行时,便会暂借计算机的运算及储存资源,以分摊方式协助电波解析运算。


透过Internet上多部计算机的分担运算,一样可以快速求取答案,这就是Grid Computing,不需要在意帮助解析运算的计算机位在何处,也不需要在意计算机是UNIX还是Windows(只有安装屏幕保护程序前需要知道),任何类型的计算机都可以帮助运算。


也因为可从广大且近乎无限的Internet上调度运算及储存资源,就像是个庞大的运算发电厂般想用多少就有多少,所以也被人称为Utility Computing(公用运算),如同电力公司、自来水公司等公用事业一样,用户使用运算资源、储存资源就如同使用源源不绝的电力、自来水一样,且不用去理会资源取用时的复杂过程,亦即数据在哪运算?储存在哪等都不需要在意,但依然可自然、正常使用,如同不需要知道自来水厂如何沈淀、杀菌,电厂如何机组规划、调度等,用户只要安心、专注于使用就行。


此外,此种资源运算方式不仅想用多少就有多少,不想用时什么都无须相关准备,因此也被称为On-Demand Computing(随需运算),一切只依据适度的需要来启动、取用。


不过,SETI@HOME毕竟是科学计划,一般商业用途可行否?2002年IBM为美国一家在线游戏业者:Bufferfly.Net导入Grid Computing,该业者过去须在营运机房内准备大量的服务器以因应寒暑假的尖峰游玩,如今只要准备比离峰稍多的系统及资源,当需要更多运算时则向附近小区的众多计算机中进行运算与储存等资源的调度、借挪。


Grid立意虽佳,但眼前依然有四项因素要克服,包括在广域网调度时的服务反应时间不确定,数据传递时的安全性不确定,信息系统的资产权归属认定开始模糊化,资源共享后的收益拆帐商业模式也还在摸索。


结语

Grid立意虽佳,但眼前依然有四项因素要克服,包括在广域网调度时的服务反应时间不确定,数据传递时的安全性不确定,信息系统的资产权归属认定开始模糊化,资源共享后的收益拆帐商业模式也还在摸索。


经过上述的演化说明,是否已体会运算架构与技术的新趋势及个中真义呢?很明显的,双核、多核、多绪等是以既有SMP架构为基础的更高度化发展,设计上更为集中、一致,相对的Cluster、Grid则是以过去的MPP架构为出发,进行更宽松、弹性的发展,包括不拘系统型态,也不拘联机长短。


虽然是两种不同路线的再进化,但有一点却是相同不悖的,那就是以积木式、模块化的方式来提升,双核、多核不就是以同样的核心为基础模块所复制成?丛集不也是以多部相同计算机所串连成(虽然允许各部不同组态与规格,但如此容易使某部单机成为整体丛集系统的瓶颈所在,因此多半会力求串连各机的资源与规格能够一致)。


不仅是Cluster计算机,就连SMP计算机、超级计算机等也都力求模块化设计,刀锋服务器(Blade Server)更是模块化的最新典范,只要不断连接相同一致的系统,就能使效能与资源获得扩增,模块化的作法也有助于让硬件组件更为标准化及增加用量,透过标准化与用量的增加才能有效降低成本,快速降价是今日任何信息硬件都要面对的课题,没有任何系统能例外。


希望ATPG的进步不只在未来能够找到在循序电路内有更有效率的验证方法,另外也希望能够利用更多关于电路上的信息,提升ATPG Engine朝向Word Level ATPG做更高阶的应用。(作者为台大电子工程学研究所/台大系统芯片中心研发教授?黄钟扬;研究生林庭豪)


不仅是Cluster计算机,就连SMP计算机、超级计算机等也都力求模块化设计,刀锋服务器(Blade Server)更是模块化的最新典范,只要不断连接相同一致的系统,就能使效能与资源获得扩增,模块化的作法也有助于让硬件组件更为标准化及增加用量,透过标准化与用量的增加才能有效降低成本,快速降价是今日任何信息硬件都要面对的课题,没有任何系统能例外。


[1]HyperThreading、Multi-Threading技术不需倚赖重新编译就可发挥加速效果,但若能重新编译则可更快速。


[2]有些数据认为Cluster已允许各机使用不同操作系统,只要相互间的沟通讯息达成默契即可。>

















延 伸 阅 读



















表格:基于经济效益的考虑,传统石英光纤的光导波路已逐渐被高分子光导波路取代,高分子光回路中尤其是频道式(channel type)光导波路、绕射光栅、面外分岐反射镜(mirror)等关键性光回路组件,制作容易是未来普及化的基本要件,有鉴于此本文将深入探讨各种光回路组件的制作技术,并介绍有关光电复合封装技术。下一代的网格运算正在建构之中,它包括对公用计算能力、 内容管理、应用和存储的支持。虽然早期的应用还只是理论上的,但是它的商业潜力已经得到了认可。 现在普遍的舆论认为网格运算是未来发展的必然方向,但是向这个新模型的演化必将依赖经济学。」一文。

网格运算:分布式的优势随着行动通信技术与市场之蓬勃发展,在第三代行动通信系统市场起步之际,国际间已纷纷成立相关研究组织探讨B3G技术与发展趋势,例如ITU-T "IMT-2000 and Beyond" SSG与Wireless World Research Forum(WWRF)等。另外,3GPP、IEEE、IETF、ETSI等国际标准制定组织,也积极的参与B3G技术的研讨。不可否认,单纯从芯片设计角度考虑,AMD的确做得比英特尔出色,至少从目前来看是这样子的,但这种设计上的优势能否转移成销售上的优势?这也许是现在AMD 的痛处所在。」一文中得到进一步的介绍。

AMD双核Opteron徘徊在爱与痛的边缘在「计算机不用的时候,除了挂在在线游戏练功、利用P2P抓歌之外,有没有更有意义的用途?其实只要下载一个简单的软件,立刻就能让自己的计算机成为「全世界最大的计算机」之一,而且不论是预测全球暖化、研究艾滋病、寻找重力波或是接触外星人,各种影响人类未来发展的重大突破,都有可能在自己的计算机上被完成。」一文为你做了相关的评析。















市场动态


















分布式计算把计算机变大、拉近科学距离基于经济效益的考虑,传统石英光纤的光导波路已逐渐被高分子光导波路取代,高分子光回路中尤其是频道式(channel type)光导波路、绕射光栅、面外分岐反射镜(mirror)等关键性光回路组件,制作容易是未来普及化的基本要件,有鉴于此本文将深入探讨各种光回路组件的制作技术,并介绍有关光电复合封装技术。美商甲骨文公司今天发表亚太地区第一波「甲骨文网格指数」(Oracle Grid Index)研究报告,结果显示亚太地区在网格运算建构要件方面得分相当高。这套网格指数研究是甲骨文推动网格运算的行动之一,主旨在于调查企业对于网格相关技术之接受态度,以了解企业界对于网格运算所采取的进程,并以特定指针加以测量。」一文。
甲骨文第一波网格指数 显示亚太地区网格运算风潮领先世界随着行动通信技术与市场之蓬勃发展,在第三代行动通信系统市场起步之际,国际间已纷纷成立相关研究组织探讨B3G技术与发展趋势,例如ITU-T "IMT-2000 and Beyond" SSG与Wireless World Research Forum(WWRF)等。另外,3GPP、IEEE、IETF、ETSI等国际标准制定组织,也积极的参与B3G技术的研讨。甲骨文第一波网格指数 显示亚太地区网格运算风潮领先世界」一文中得到进一步的介绍。
AMD双核正式发布─Athlon64 X2 5/31登场、6/7开卖


在「每年分别于春季、秋季举办的英特尔科技论坛(Intel Developer Forum;IDF),一向为高科技电子产业的例行盛事。2004IDF主题为“Converging Technologies,Growing Opportunities ”(汇流中的科技,成长中的机会),众多Intel产品事业群的高阶主管,都为此特别拨出时间,前来台北发表专题演说,并与产业人士及媒体面对面,交换对于产业发展趋势及英特尔产品新讯的看法。」一文为你做了相关的评析。


相关文章
掌握开放资源 立足亚洲IT维运中心
丛集(Cluster)技术─打造一个不停机的作业环境
ASP—解放中小企业资讯潜能
comments powered by Disqus
相关讨论
  相关新闻
» 美光针对用户端和资料中心等市场 推出232层QLC NAND
» 摩尔斯微电子在台湾设立新办公室 为进军亚太写下新里程碑
» 爱德万测试与东丽签订Micro LED显示屏制造战略夥伴关系
» 格斯科技携手生态系夥伴产学合作 推出油电转纯电示范车
» Arm:因应AI永无止尽的能源需求 推动AI资料中心工作负载


刊登廣告 新聞信箱 读者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 远播信息股份有限公司版权所有 Powered by O3  v3.20.1.HK84Q0R2JY8STACUKD
地址:台北数位产业园区(digiBlock Taipei) 103台北市大同区承德路三段287-2号A栋204室
电话 (02)2585-5526 #0 转接至总机 /  E-Mail: webmaster@ctimes.com.tw