1. 首页 > 经验  > 正文

多核技术

多核技术

核心是指在一处理器中集成两个或多个完整计算引擎(核心)。多核技术的开发源于工程师们认识到,仅提高单核晶片的速度会产生过多热量且无法带来相应的性能改善,先前的处理器产品就是如此。先前产品中以那种速率,处理器产生的热量很快超过太阳表面。即便是没有热量问题,其性价比也令人难以接受,速度稍快的处理器价格要高很多。

基本介绍

中文:多核技术套用:处理器解决问题:降低处理器热量解决策略:“分治法”战略

“分治法”战略

英特尔工程师们开发了多核晶片,使之满足“横向扩展”(而非“纵向扩充”)方法,从而提高性能。该架构实现了“分治法”战略。
通过划分任务,执行绪套用能够充分利用多个执行核心,并可在特定的时间内执行更多任务。
多核处理器是单枚晶片(也称为“硅核”),能够直接插入单一的处理器插槽中,但作业系统会利用所有相关的资源将它的每个执行核心作为分立的逻辑处理器。通过在两个执行核心之间划分任务,多核处理器可在特定的时钟周期内执行更多任务。
多核架构能够使软体更出色地运行,并创建一个促进软体编写更趋完善的架构。
儘管认真的软体厂商还在探索全新的软体并发处理模式,但是,随着向多核处理器的移植,现有软体无需被修改就可支持多核平台
作业系统专为充分利用多个处理器而设计,且无需修改就可运行。为了充分利用多核技术,套用开发人员要在程式设计中融入更多思路,但设计流程对称多处理 (SMP) 系统的设计流程相同,并且现有的单执行绪套用也将继续运行。
得益于执行绪技术的套用在多核处理器上运行时将显示出卓越的性能可扩充性。此类软体包括媒体套用(内容创建、编辑,以及本地和数据流回放)、工程和其他技术计算套用以及诸如套用伺服器和资料库等中间层与后层伺服器套用。
多核技术能够使伺服器并行处理任务,而在以前,这可能需要使用多个处理器,多核系统更易于扩充,并且能够在更纤巧的外形中融入更强大的处理性能,这种外形所用的功耗更低、计算功耗产生的热量更少。多核技术 是处理器发展的必然近20年来,推动微处理器性能不断提高的因素主要有两个:半导体工艺技术的飞速进步和体系结构的不断发展。半导体工艺技术的每一次进步都为微处理器体系结构的研究提出了新的问题,开闢了新的领域;体系结构的进展又在半导体工艺技术发展的基础上进一步提高了微处理器的性能。这两个因素是相互影响,相互促进的。一般说来, 工艺和电路技术的发展使得处理器性能提高约20倍,体系结构的发展使得处理器性能提高约4倍,编译技术的发展使得处理器性能提高约1.4倍。但是今天,这种规律性的东西很难维持。多核的出现是技术发展和套用需求的必然产物。这主要基于以下事实;

电晶体时代

根据摩尔定律,微处理器的速度以及单片集成度每18个月就会翻一番。经过多年的发展,通用微处理器的主频已经突破了4GHz,数据宽度也达到64位。在製造工艺方面也同样以惊人的速度在发展,0.13um工艺的微处理器已经批量生产,90nm工艺以下的下一代微处理器也已问世。照此下去,到2010年左右,晶片上集成的电晶体数目将超过10亿个。因此,体系结构的研究又遇到新的问题:如何有效地利用数目众多的电晶体?国际上针对这个问题的研究方兴未艾。多核通过在一个晶片上集成多个简单的处理器核充分利用这些电晶体资源,发挥其最大的能效。

全局连线

随着VLSI工艺技术的发展,电晶体特徵尺寸不断缩小,使得电晶体门延迟不断减少,但互连线延迟却不断变大。当晶片的製造工艺达到0.18微米甚至更小时,线延迟已经超过门延迟,成为限制电路性能提高的主要因素。在这情况下,由于CMP(单晶片多处理器)的分散式结构中全局信号较少,与集中式结构的超标量处理器结构相比,在克服线延迟影响方面更具优势。

符合Pollack规则

按照Pollack规则,我们知道处理器性能的提升与其複杂性的平方根成正比。 如果一个处理器的硬体逻辑提高一倍,至多能提高性能40%,而如果採用两个简单的处理器构成一个相同硬体规模的双核处理器,则可以获得70%~80%的性能提升。同时面积上也同比缩小。

能耗增长

随着工艺技术的发展和晶片複杂性的增加,晶片的发热现象日益突出。多核处理器里单个核的速度较慢,处理器消耗较少的能量,产生较少的热量。同时,原来单核处理器里增加的电晶体可用于加多核处理器的核。在满足性能要求的基础上,多核处理器通过关闭(或降频)一些处理器等低功耗技术,可以有效地降低能耗。

设计成本

随着处理器结构複杂性的不断提高,和人力成本的不断攀升,设计成本随时间呈线性甚至超线性的增长。多核处理器通过处理器IP等的复用,可以极大降低设计的成本。同时模组的验证成本也显着下降。

结构发展

超标量(Superscalar)结构和超长指令字(VLIW)结构在高性能微处理器中被广泛採用。但是它们的发展都遇到了难以逾越障碍。Superscalar结构使用多个功能部件同时执行多条指令,实现指令级的并行(Instruction-Level Parallelism,ILP)。但其控制逻辑複杂,实现困难,研究表明,Superscalar结构的ILP一般不超过8。VLIW结构使用多个相同功能部件执行一条超长的指令,但也有两大问题:编译技术支持和二进制兼容问题。
未来的主流套用需要处理器具备同时执行更多条指令的能力,但是从单一执行绪中已经不太可能提取更多的并行性,主要有以下两个方面的原因一是不断增加的晶片面积提高了生产成本;二是设计和验证所花费的时间变得更长。在处理器结构上,更複杂化的设计也只能得到有限的性能提高。
对单一控制执行绪的依赖限制了多数套用可提取的并行性,而主流商业套用,如线上资料库事务处理(Online Database Transaction)与网路服务(如Web伺服器)等,一般都具有较高的执行绪级并行性(TLP,Thread Level Parallelism)。为此,研究人员提出了两种新型体系结构: 单晶片多处理器(CMP)与同时多执行绪处理器(Simultaneous Multithreading,SMT),这两种体系结构可以充分利用这些套用的指令级并行性和执行绪级并行性,从而显着提高了这些套用的性能。
从体系结构的角度看,SMT比CMP对处理器资源利用率要高,在克服线延迟影响方面更具优势。CMP相对SMT的最大优势还在于其模组化设计的简洁性。複製简单设计非常容易,指令调度也更加简单。同时SMT中多个执行绪对共享资源的争用也会影响其性能,而CMP对共享资源的争用要少得多,因此当套用的执行绪级并行性较高时,CMP性能一般要优于SMT。此外在设计上,更短的晶片连线使CMP比长导线集中式设计的SMT更容易提高晶片的运行频率,从而在一定程度上起到性能最佳化的效果

趋势总结

单晶片多处理器通过在一个晶片上集成多个微处理器核心来提高程式的并行性。每个微处理器核心实质上都是一个相对简单的单执行绪微处理器或者比较简单的多执行绪微处理器,这样多个微处理器核心就可以并行地执行程代码,因而具有了较高的执行绪级并行性。由于CMP採用了相对简单的微处理器作为处理器核心,使得CMP具有高主频、设计和验证周期短、控制逻辑简单、扩展性好、易于实现、功耗低、通信延迟低等优点。此外,CMP还能充分利用不同套用的指令级并行和执行绪级并行,具有较高执行绪级并行性的套用如商业套用等可以很好地利用这种结构来提高性能。单晶片多处理器已经成为处理器体系结构发展的一种必然趋势。
性能评测方法
评测对于其设计,开发和套用都至关重要。公开的实际评测平台包括COSMIC Heterogeneous Multiprocessor Benchmark Suite。

本文由'竹寒蕾'发布,不代表演示站立场,转载/删除联系作者,如需删除请-> 关于侵权处理说明