浅析多核计算机系统结构

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

浅析多核计算机系统结构

摘要:多核技术成为当今处理器技术发展的重要方向,已经是计算机系统设计者必须直面的现实。从计算机系统结构的角度探讨了同构与异构、通用与多用等多核处理器的类型,讨论了多核处理器对计算机系统结构设计带来的挑战。

关键词:多核;结构设计;系统结构

引言

多核技术最早应用于数字信号处理的 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 公司的Ultrasparc T1有8个核;Clearspeed的Cx600达到96个核;CISCO

的NPU有192个核;日本RIK-EN针对N-body计算的Grape-DR处理器达到512个核。

多核处理器技术的研究在国内起步较晚,但发展势头迅猛。2008年Hot Chips 大会上,中国研究人员就展出了龙芯3的核心架构。由中科院主导,我国已经成功生产出65nm制程的多核“龙芯3”处理器,有四核和八核两个版本,时钟主频均为1GHz。“龙芯3”的特色在于采用分布式、可扩展的架构,使用了MIPS64内核,增加了超过200条的×86二进制转换和多媒体加速指令。清华大学信息科学技术国家实验室CPU中心汪东升教授和他的团队目前也致力于多核处理器的研究,在2009年中国计算机大会上,他们从产业界和学术界的角度出发,针对多核系统设计中的关键问题、面向多核环境的操作系统、并行编程、并行编译、可重构等方面展开讨论,系统阐述了我国多核处理器技术的研究思路、发展方向及面临的挑战。

二、多核发展趋势

多核处理器产生的直接原因是替代单处理器,解决微处理器的发展瓶颈,但发展多核的深层次原因还是为了满足人类社会对计算性能的无止境需求,而且这种压力还会持续下去。即便在当前,设计者已经有效地将多核性能提高到了一个新的水平,可是人们对性能的渴望并未就此泯灭。为了实现高性能、低功耗和高应用性的目标多核处理器呈现以下几种发展趋势:

(1) 多核上将集成更多结构简单、低功耗的核心。为了满足性能需求,通过集成更多核心来提高性能是必然选择,但是核心的结构也必须考虑。因为如果核心结构过于复杂,随着核心数量的增多,不仅不能提升性能,还会带来线延迟增加和功耗变大等问题。例如,2007 年 Tilera 公司和 Plurality 公司分别推出自己的 64 核处理器产品,而 Intel 公司也将推出 80个核心的低功耗处理器。

(2) 异构多核是一个重要的方向。研究表明,将结构、功能、功耗、运算性能各不相同的多个核心集成在芯片上,并通过任务分工和划分将不同的任务分配给不同的核心,让每个核心处理自己擅长的任务,这种异构组织方式比同构的多核处理器执行任务更有效率,实现了资源的最佳化配置,而且降低了整体功耗。

(3) 多核上应用可重构技术。大规模高性能可编程器件的出现,推动了现场可编程门阵列(field programmable gate arrays,FPGA) 技术的发展。在芯片上应用 FPGA 技术有高灵活性、高可靠性、高性能、低能耗和低成本多种优势。微处理器设计人员注意到了这种优势,并将 FPGA 等可重构技术应用到多核结构上,让结构具备可重构性和可编程性。这种创新思路大大提高了多核的通用性和运算性能,使处理器既有了通用微处理器的通用性,又有专用集成电路的高性能,使之兼具了灵活性、高性能、高可靠、低能耗等众多优良特点。

三、多核计算机结构设计

从所包含的处理器核结构的角度来看,多核处理器分为同构多核处理器和异构多核处理器。同构与异构是多核处理器主要的两种结构形态。同构多核处理器中处理器芯片内部的所有内核结构完全相同,各个内核具有等同的地位。异构多核处理器中异构多核处理器芯片内部采用多种功能不同的内核,一般是由负责管理调度的主核和负责计算的从核构成,或者由承担定点、浮点、特殊计算等不同计算功能的多种内核组成。从应用的角度来说,目前的同构多核处理器大多数由通用的处理器核组成,每个处理器核可以独立地执行任务,与通用单核处理器结构相近。异构多核处理器通常同时集成通用处理器、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 的大规模数据通路处理器。

相关文档
最新文档