硬件业的发展现状告诉我们,很多硬件概念需要重新认识,包括CPU内核、Cache、内存等系统设计。想当然地以为只要在一帧芯片内堆放多枚内核就能得到高性能的思维是幼稚的。虽然,“肥胖型”CPU的设计能够消除掉某些性能“瓶颈”,但是它会出现某些新瓶颈,甚至原有的问题变得严重化了。而且,矛盾还不仅仅属于CPU本身,整个问题的解决涉及到系统设计、芯片封装设计、内存子系统设计甚或I/O设计。一些看似过时的设计思想需要重新反思和评估。
线程或内核数
究竟多少线程或内核数称得上最佳?目前尚无定论。部分原因在于,技术一直处于变革之中,而且不同设计具有不同的目标取向。CPU内核的最大数或许类似摩尔定律—假设芯片平均尺寸不变,每帧芯片的内核数将不断增加。目前,CPU内核常见的硬件线程数为2,4或8。对于SMT设计而言,数量更多的硬件线程也许可以榨取更多的剩余资源,但也会加剧芯片的复杂度和成本负担。况且数量太多的线程反而会造成性能紊乱。
精明的ISVs(独立软件开发商)在软件授权许可中指明是“每帧处理器”,今后也许会改为“CPU每内核”,比方说,一位公司客户的服务器具有2帧双核处理器,那么在购买软件时须支付4倍单处理器版本的费用。随着Intel和AMD将双核x86处理器相继摆上桌面,软件商对这样的问题将会直言不讳。但这并非多核为客户造成尴尬的唯一原因。
多核为客户造成的另一个问题是缺乏机动、不便升级。以配置为双核处理器的4P系统(每帧处理器具有4 sockets)为例,其升级方式可以是从1到4个处理器芯片和2到8个CPU内核,但如果是8核处理器的话则只能有8个内核。当然,8核设计也可以是一种冗余方式,它可以表示至少有4内核可以使用,而且各内核应当具有相同的频率。
Sun公司采用TLP优化设计的Niagara,正在实验室处于测试阶段。Niagara正是一帧用于服务器的8内核处理器,芯片尺寸约为350平方毫米,最大能耗60W,它采用16个2GByte DIMMs,总计32GB主内存,主存带宽超过20GB/s。其8内核共享3MB L2 Cache,每个内核具有16KB L1指令Cache和8KB L1数据Cache;其流水线有6阶长,没有分支预报单元。
Niagara整个芯片有近2000针脚用于I/O和供能,其中大部分用于主存系统;模上主存控制器采用的是4帧双通道DDR2。我们知道,AMD Opteron是具有模上1帧双通道DDR。与Intel公司最快的90nm Pentium4相比,Niagara能耗是其一半,但模尺寸却有3倍多,从而使能耗密度缩小6倍,Niagara散热应当相对容易。
Sun正在研发的Niagara-2处理器,内置有1OGbit以太网,时帧有望达到Sun的高端设计Rock处理器指标。Niagara芯片系列针对的是基于高密网络的重量级应用,每个线程不会让CPU太吃紧;而Rock单线程性能色彩如此浓烈,甚至超越了Sun的“宽肥型”设计结构UltraSPARC V,尽管它的硬件线程数与Niagara大致相同。
【重要声明】:天极myhard网站刊载此文仅为提供更多信息的目的,并不代表天极Myhard同意文章的说法或描述,也不构成任何建议。对本文有任何异议,请联络hardware@chinabyte.com
|
|