正在阅读:AMD:多核革命的希望、风险及影响(中)AMD:多核革命的希望、风险及影响(中)

2007-06-25 16:41 出处: 作者:John McCalpin Chuck Moore Phil Hester 责任编辑:gongjianhui

  

  中篇将讨论多核处理器在短期内需要解决的一些问题,如功耗问题、单/多线程性能矛盾、最优核心数量等,为此,作者还对传统的Amdahl 定律进行了适当修改。此外,文章还从技术和市场的角度对多核芯片与RISC SMP进行了比较,作者认为这二者之间存在一定的相似性,而且,64位多核处理器对RISC市场构成了挑战。
 
  1)功耗问题也很复杂
 
  跟性能一样,功耗问题也会比你想象的要复杂得多,同样会涉及多个方面。在基于高性能处理器的计算机系统环境中,“功耗”问题可能意味着以下任何一种情况:
 
  通过众多超细针脚/焊点传送到芯片的大量电流。(注意:即使在同样的功耗水平下,随着电压下降,电流上升,针脚/焊点内的热阻也将升高。)
 
  消除大量热量,以防止Die温度超过阈值,明显缩短产品寿命。
 
  “热点”问题:芯片局部区域中的功耗密度过高可能将导致局部故障。(注意:若为了保持同样的功耗水平,将晶圆上的处理器内核尺寸减少一半,同时提高频率,则内核中的功耗密度将提高一倍。)
 
  为提供计算服务,需要为系统设备提供大量电力――包括电力成本和用电升级成本。
 
  消除放置服务器所需基础设施所产生的大量热量――包括电力成本和机房冷却系统升级成本。
 
  消除处理器芯片造成的大量热空气,以免影响其他热敏组件(如内存、硬盘等)。
 
  由此可以看出,功耗问题实际上至少与5、6个相关而性质截然不同的技术问题和经济问题有关。
 
  2)单线程性能和多线程性能的矛盾
 
  下面,我们需要进一步探讨的是,如何在保持功耗水平不变的情况下,通过多核心设计来提高CPU的吞吐量和性能。我们知道,在假定其他条件不变的情况下,功耗往往是以CPU主频的平方倍或立方倍增长的,而性能提升却要低于主频的线性增长速度。可见,在主频发展到一定程度,试图继续通过提升主频来提高每瓦特性能的做法会越来越难以凑效。
 
  多核为我们提供了一种新的方法。对于那些可以充分利用多线程的应用负载来说,多核可以极大地提高CPU的每瓦特吞吐量。但是,多核也存在缺陷,就象我们前文讨论过的,这种吞吐量的提升是以牺牲单线程性能为代价的。
 
  为了在一颗芯片上放入更多的内核,一方面,我们可以不断改进平版印刷工艺,以把更多的当前内核放进去,另一种方法就是设计尺寸更小、也更节能的新内核。但问题在于,过去数年来,我们把单线程看得太重要了,使得后一种方法并没得到大规模使用(除了SUN的TI处理器外)。
 
  通过上文的性能模型分析表明,只要我们能够保证CPU内核的功耗下降速度快于峰值吞吐量的下降速度,我们就能够通过无数个高效率的微小核心来获得最优的吞吐量性能。很显然,这样一种系统会使单线程性能很低。
 
  那么,在多核系统中,如何来解决“多线程应用性能提高、单线程应用性能下降”的这种矛盾呢?到底多少个处理器内核才是最优的呢?
 
  为此,我们可以事先定义好可以接受的最低单线程性能(minimum acceptable single-thread performance),然后对芯片进行优化,在限定的面积和功耗水平下,使其能包含尽可能多的内核。
 

  此外,还有其他一些因素会限定内核的数量。一个因素就是通信(communication)和同步(synchronization),这一点在简单的吞吐量模型中往往被忽视了。而实际情况是,如果你想在一个并行、线程化的应用中使用不只一个内核,就需要某种通信/同步,而且,对于一个固定的工作负载,通信/同步开销是作业所用 CPU 内核数量的单调递增函数(monotonically increasing function)。由此,我们需要对 Amdahl 定律做些简单修改:

  

8205

  其中,T 为解决某计算问题所需的总时间,Ts 是完成串行(非重叠性,non-overlapped)工作所需的时间,Tp 是完成所有并行工作所需的时间,N 是并行工作中所使用的处理器数量,To 是每颗处理器的通信与同步开销。To正是传统 Amdahl 定律公式中所没有的――随着处理器的增多,总开销也会增加。
 
  在没有引入通信/同步开销的传统标准模型中,总时间T就是处理器数N的一个单调递减函数(monotonically decreasing function),会逐渐接近于Ts。而在修改后的公式中,我们很清楚地看到,由于存在通信开销,随着处理器数N 的增加,在达到某一临界点后,总时间T就会开始增加。因此,对于一个完全并行的应用 (即Ts=0) 来说,其所需处理器的最优数量是:  

  

8204

   
  比如,假设通信同步开销 To 是并行化时间 Tp 的 1%,那么,我们可以算出:使用 10 个处理器就能获得最大的性能表现。当然,在实际系统设计时,我们还需要权衡其他一些影响性能和性价比的因素。

 
这些令人意想不到的黑客藏身之处 你猜对几个? 受不了多愁善感的天气?那就选部好片宅在家 追求极致的体验 神画智能影院F1 Pro新品评测 斐讯与他的0元购:一个猜到开头却猜错结尾的故事 不好意思 你在电脑上干了什么我们都知道!
键盘也能翻页,试试“← →”键

为您推荐

加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多

服务器论坛帖子排行

最高点击 最高回复 最新
最新资讯离线随时看 聊天吐槽赢奖品