您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 浅析多核计算机系统结构
1浅析多核计算机系统结构摘要:多核技术成为当今处理器技术发展的重要方向,已经是计算机系统设计者必须直面的现实。从计算机系统结构的角度探讨了同构与异构、通用与多用等多核处理器的类型,讨论了多核处理器对计算机系统结构设计带来的挑战。关键词:多核;结构设计;系统结构引言多核技术最早应用于数字信号处理的DSP处理器,经过十几年的发展,已成为信号处理、网络信息处理等专业方向针对多路信号处理普遍采用的技术。本世纪初多核技术在通用处理器上开始应用,IBM的Power4成为首个双核通用处理器,成为处理器芯片能力继续按摩定律提升的新的技术手段。多核技术的普遍采用,引发了系统设计的新局面。其一,处理器芯片的单位性能增长,使系统的能力随之提高;其二,获取芯片性能的方法发生变化,如何使多个核心发挥出效益成为新的问题;其三,处理器芯片内核心个数的增加使得系统一下子进入多核的并行局面,并行技术从系统层面、部件层面进入了芯片层面,如,芯片内的核间通信、多cache一致性已经成为通用处理器必需面对的技术,也致使处理器结构复杂性大大增加。本文试图从多核处理器技术的诞生、发展趋势、结构设计以及所面临的挑战等方面对多和计算机系统结构进行浅析。一、多核技术的出现与发展1996年,斯坦福大学研制出世界上第一款多核处理器的原型系统Hydra。此后,多核处理器的相关研究与商业应用开始蓬勃发展。短短10年时间,双核(Daul-Core)处理器芯片成为通用微处理器市场的主流产品,2005年4月,英特尔推出简单封装双核的奔腾D和奔腾4至尊版840处理器;AMD在之后也发布了双核皓龙(Opteron)和速龙(Athlon)64×2和处理器。但真正的“双核元年”则被认为是2006年7月23日,英特尔基于酷睿(CORE)架构发布的处理器。同年11月,英特尔又推出面向服务器、工作站和高端个人电脑的至强(Xeon)5300和酷睿双核、四核的至尊版系列处理器。与上一代台式机处理器相比,酷睿2双核处理器在性能方面提高40%,功耗反而降低40%;AMD也推出了双核、三核以及四核的“皓龙”芯片;IBM多核(Multi-Core)开始向众核(Many-core)的方向发展。Sony与IBM等公司合作研发的针对图形运算的CELL芯片拥有9个核;SUN公司的UltrasparcT1有8个核;Clearspeed的Cx600达到96个核;CISCO2的NPU有192个核;日本RIK-EN针对N-body计算的Grape-DR处理器达到512个核。多核处理器技术的研究在国内起步较晚,但发展势头迅猛。2008年HotChips大会上,中国研究人员就展出了龙芯3的核心架构。由中科院主导,我国已经成功生产出65nm制程的多核“龙芯3”处理器,有四核和八核两个版本,时钟主频均为1GHz。“龙芯3”的特色在于采用分布式、可扩展的架构,使用了MIPS64内核,增加了超过200条的×86二进制转换和多媒体加速指令。清华大学信息科学技术国家实验室CPU中心汪东升教授和他的团队目前也致力于多核处理器的研究,在2009年中国计算机大会上,他们从产业界和学术界的角度出发,针对多核系统设计中的关键问题、面向多核环境的操作系统、并行编程、并行编译、可重构等方面展开讨论,系统阐述了我国多核处理器技术的研究思路、发展方向及面临的挑战。二、多核发展趋势多核处理器产生的直接原因是替代单处理器,解决微处理器的发展瓶颈,但发展多核的深层次原因还是为了满足人类社会对计算性能的无止境需求,而且这种压力还会持续下去。即便在当前,设计者已经有效地将多核性能提高到了一个新的水平,可是人们对性能的渴望并未就此泯灭。为了实现高性能、低功耗和高应用性的目标多核处理器呈现以下几种发展趋势:(1)多核上将集成更多结构简单、低功耗的核心。为了满足性能需求,通过集成更多核心来提高性能是必然选择,但是核心的结构也必须考虑。因为如果核心结构过于复杂,随着核心数量的增多,不仅不能提升性能,还会带来线延迟增加和功耗变大等问题。例如,2007年Tilera公司和Plurality公司分别推出自己的64核处理器产品,而Intel公司也将推出80个核心的低功耗处理器。(2)异构多核是一个重要的方向。研究表明,将结构、功能、功耗、运算性能各不相同的多个核心集成在芯片上,并通过任务分工和划分将不同的任务分配给不同的核心,让每个核心处理自己擅长的任务,这种异构组织方式比同构的多核处理器执行任务更有效率,实现了资源的最佳化配置,而且降低了整体功耗。(3)多核上应用可重构技术。大规模高性能可编程器件的出现,推动了现场可编程门阵列(fieldprogrammablegatearrays,FPGA)技术的发展。在芯片上应用FPGA技术有高灵活性、高可靠性、高性能、低能耗和低成本多种优势。微处理器设计人员注意到了这种优势,并将FPGA等可重构技术应用到多核结构上,让结构具备可重构性和可编程性。这种创新思路大大提高了多核的通用性和运算性能,使处理器既有了通用微处理器的通用性,又有专用集成电路的高性能,使之兼具了灵活性、高性能、高可靠、低能耗等众多优良特点。3三、多核计算机结构设计从所包含的处理器核结构的角度来看,多核处理器分为同构多核处理器和异构多核处理器。同构与异构是多核处理器主要的两种结构形态。同构多核处理器中处理器芯片内部的所有内核结构完全相同,各个内核具有等同的地位。异构多核处理器中异构多核处理器芯片内部采用多种功能不同的内核,一般是由负责管理调度的主核和负责计算的从核构成,或者由承担定点、浮点、特殊计算等不同计算功能的多种内核组成。从应用的角度来说,目前的同构多核处理器大多数由通用的处理器核组成,每个处理器核可以独立地执行任务,与通用单核处理器结构相近。异构多核处理器通常同时集成通用处理器、DSP、媒体处理器、网络处理器等多种类型的处理器内核,各个内核针对不同的需求,从而提高应用的计算性能。其中,通用处理器核常作为主核控制处理器以进行通用计算,而其他处理器核用于加速特定的应用。3.1同构多核处理器结构同构多核结构的处理器主要有Intel、AMD、IBM和SUN的产品。目前,双核和四核处理器是主流,它们的共同点是采用对称设计,设置多级缓存,共享二级或三级缓存,核间用高速总线或开关互连,增强多媒体处理和特殊应用能力,采用智能功耗管理技术,支持虚拟化技术等。同构多核处理器的核数有继续扩大的趋势,正在研究一种称作Tile(块)结构的新型多核处理器,可以将核数增至数十个以上。Tile(块)结构是一种把无布线延迟问题的小尺寸功能块,按一定规则排列构成高速处理器的方式。这种方式由于受到小尺寸功能块的制约,可以大大减轻在Tile内部产生布线延迟问题。另外,由于信息传输仅在物理位置相距很近的几个Tile间进行,因而也使Tile间的通信延迟得以缓解。Tile结构与超标量处理器最大不同在于:(1)Tile处理器是由多个采用相同设计的功能块按一定规则排列构成的,其功能部件主要有计算单元、Tile间连接布线和路由器等;(2)传统处理器设计只是对高速缓存和互连网络进行了优化以谋求更高的性能,而Tile处理器为了克服布线延迟,在芯片上配置多个结构完全相同的Tile单元,以提高设计的可重用性,减轻验证等作业的负担;(3)Tile结构大多采用在增加Tile单元数时,不降低工作频率的就近连接网络。美国马萨诸塞大学正在开发的Raw处理器是Tile结构的先驱。IBM和德克萨斯大学也正在开发一款采用Tile结构的TRIPS处理器。此外,日本也在进行相关研究,即正在研制一种世界尖端的称为ALU-Net的大规模数据通路处理器。43.2异构多核处理器结构微处理器结构在未来数年内将发生革命性变化,那就是多核架构将从通用的对称设计迁移到“主核心+协处理器”的非对称设计,亦即处理器中只有少数通用核心承担任务指派功能,诸如浮点运算、视频解码、Java语言执行等任务都可以由专门的硬件核心来完成,由此实现处理器执行效率和最终性能的大幅度跃升。IBM的Cell、Intel的Many-core和AMDHyper-Transport协处理器平台,便是该思想的典型代表。异构多核处理器体系结构的设计方法已经从单纯的多处理器核的统一构建发展为根据需求进行的自动化构建,逐渐从通用的设计目标转化为面向某一特定领域专用的设计目标。随着工艺的发展和应用程序需求的提高,使用可配置的、具有基本加速功能单元的处理器核作为多核处理器的节点已经不足以满足性能需求。而使用定制理器核作为异构多核处理器的节点进行更加灵活高效的多处理器核配置,是异构多核处理器体系结构发展的重要趋势。同时,异构多核处理器体系结的设计需要在不同体系结构的处理器核之间进行任务的映射以及任务间的通信。如何构建高效的异构多核处理器的设计开发平台,进行有效的软硬件任务划分后进行任务映射,都是当前该领域的重要研究内容。3.3多核处理器对系统结构设计的影响多核技术能充分利用芯片集成度提高带来的诸多好处,使处理器芯片性能成倍的增加。但是,很明显,原本基于单核的计算机系统中的系统级的一些问题也随之引入到了处理器芯片内部,直接对系统结构设计产生影响,如系统的多级并行问题、芯片内的核间通信问题、多Cache一致性问题、芯片间互连问题等等,系统功耗问题、存储器墙问题也会进一步加剧。四、多核技术面临的挑战多核处理器虽然拥有芯片集成度高、指令并行度高、器件设计验证方便等诸多优势,而且还继承了传统单处理器研究中的某些成果,例如同时多线程、宽发射指令、降压低功耗技术等,但它毕竟是一种新的结构,在多核结构设计和应用开发中出现了很多新问题,这些问题成为制约多核处理器技术进步的重要因素,给多核处理器的未来发展提出了挑战。4.1核心结构的选择难题目前多核处理器的核心结构主要有同构和异构两种。同构结构采用对称设计,原理简单,硬件上较易实现。当前主流的双核和四核处理器基本上都采用同构结构。同构设计的问题在于:随着核心数量的不断增多,如何保持各个核心的数据5一致;如何满足核心的存储访问和I/O访问需求;如何选择一个各方面性能均衡、面积较小以及功耗较低的处理器;如何平衡若干处理器的负载和任务协调等。与同构结构相比,异构的优势是通过组织不同特点的核心来优化处理器内部结构,实现处理器性能的最佳化,而且能有效地降低功耗。但是异构结构也存在着一些难点。首先,搭配哪几种不同的核,核心间任务如何分工以及如何实现;其次,结构是否具有良好的扩展性,还是受到核心数量的限制;再者,处理器指令系统设计和实现也是问题。因为不同核所用的指令系统对系统的实现也是很重要的,那么采用这些不同的核,是采用相同的指令系统还是不同的指令系统,能否运行操作系统等,也是需要考虑的内容。4.2功耗问题传统单处理器的一个瓶颈就是随着频率的提升,功耗越来越高,最终使得芯片无法正常运行。在早期的多核处理器设计中,主要通过降低核心频率来降低处理器的功耗,但是这样限制了核心的运算性能,并没有从根本上实现高性能、低功耗的目的。功耗过高不仅导致能源消耗,而且热堆积和过高的功耗密度也会对系统稳定性造成影响。现在一个芯片上可以集成10亿以上的晶体管,如此众多的片上资源,如何控制它的功耗,保持较高性能,成为了一个重要的问题。在多核处理器产生以前,低功耗技术主要有降低动态消耗和降低静态消耗技术两方面。动态消耗包括处理器内部各元件正常工作时所消耗的电能,例如电容性的充放电、切换频率、逻辑门的状态转换等。降低动态消耗一直以来都是人们研究的重点,而且技术比较成熟。降低动态消耗技术现在主要有多元功能电压技术、动态电压调节、时钟屏蔽技术等。静态消耗技术是指来自漏电流的功率消耗,特点是即使元件处在空闲状态也会消耗电能,具体包括亚阈值漏电流和门漏电流。降低静态消耗技术的主要技术有通道长度调整、寄存器锁存技术、能量选通技术等。4.3操作系统设计由于多核内部有多个核心,因此就存在任务分配、调度、仲裁以及平衡负载等问题,多核之间的任务调度是充分利用多处理器性能的关键。现有的操作系统还无法有效地支持多核处理器的任务运
本文标题:浅析多核计算机系统结构
链接地址:https://www.777doc.com/doc-5445376 .html