2024年3月31日发(作者:)

对于多核cpu和多核编程模型的讨论

多内核定义:

多内核(multicore chips)是指在一枚处理器(chip)中集成两个或多个完整的计算

引擎(内核)。

背景:

为什么不能用单核的设计达到用户对处理器性能不断提高的要求呢?

答案是功耗问题限制了单核处理器不断提高性能的发展途径。

多核技术的开发源于工程师们认识到,仅仅提高单核芯片(one chip)的速度会产生过

多热量且无法带来相应的性能改善,先前的处理器产品就是如此。他们认识到,在先前产

品中以那种速率,处理器产生的热量很快会超过太阳表面。即便是没有热量问题,其性价

比也令人难以接受,速度稍快的处理器价格要高很多。

上世纪八九十年代以来,推动微处理器性能不断提高的因素主要有两个:半导体工艺

技术的飞速进步和体系结构的不断发展。半导体工艺技术的每一次进步都为微处理器体系

结构的研究提出了新的问题,开辟了新的领域;体系结构的进展又在半导体工艺技术发展

的基础上进一步提高了微处理器的性能。这两个因素是相互影响,相互促进的。一般说来,

工艺和电路技术的发展使得处理器性能提高约20倍,体系结构的发展使得处理器性能提

高约4倍,编译技术的发展使得处理器性能提高约1.4倍。但这种规律性的东西却很难维

持。

多核的出现是技术发展和应用需求的必然产物。这主要基于以下事实:

1. 晶体管时代即将到来

根据摩尔定律,微处理器的速度以及单片集成度每18个月就会翻一番。多核通过在

一个芯片上集成多个简单的处理器核充分利用这些晶体管资源,发挥其最大的能效。

2.门延迟逐渐缩短,而全局连线延迟却不断加长

3.符合Pollack规则

按照Pollack规则,处理器性能的提升与其复杂性的平方根成正比。 如果一个处理器

的硬件逻辑提高一倍,至多能提高性能40%,而如果采用两个简单的处理器构成一个相同

硬件规模的双核处理器,则可以获得70%~80%的性能提升。同时在面积上也同比缩小。

4.能耗不断增长

5.设计成本的考虑

6.体系结构发展的必然

研究人员提出了两种新型体系结构: 单芯片多处理器(CMP)与同时多线程处理器

(Simultaneous Multithreading,SMT),这两种体系结构可以充分利用这些应用的指令

级并行性和线程级并行性,从而显著提高了这些应用的性能。

从体系结构的角度看,SMT比CMP对处理器资源利用率要高,在克服线延迟影响方