|
楼主 |
发表于 2007-6-8 23:39:12
|
显示全部楼层
三种CPU设计方案比较
多核处理器最初的开发在很大程度上要归功于 CMOS光刻印刷(lithography)工艺的持续进步。众所周知,随着CPU核心的尺寸/带宽的不断提升,很快就会造成投资回报的递减。因此,当核心的尺寸工艺收缩到一个小尺度上后,出于成本方面的考虑,芯片制造商通常的选择有如下三种:
• 生产更小的芯片
• 增加大量缓存
• 增加更多核心
注意,增加更多内存带宽也是一种方法,但会导致处理器芯片之外的成本也会大幅增加,如修改主板(可能需要更多的PCB层)、增加DIMM插槽等。正是因为这些额外成本以及插槽兼容性方面的顾虑,增加更多内存带宽这种方法不在本文的讨论范围。
针对上述三种方案,我们建立了SPEC测试模型,图 1 和图 2显示了相关的性能和性价比指标,假定光刻印刷精度提高30%(即尺寸缩减50%),单核频率可提高17%,双核频率则需降低17%,以保持相同的功耗水平。注意,SPECfp_rate2000基准测试包含14个独立的测试。测试指标包括:最小加速比(minimumspeedup)、中值加速比(median speedup)、几何平均加速比(geometric meanspeedup)和最大加速比(maximum speedup)。对于双核处理器方案,要同时估算单核(uni) 和双核(mp) 的加速比。
如图1所示,我们针对上述三种方案进行了SPECfp_rate2000性能评估,假定光刻印刷精度提高30%(尺寸缩减50%),相应地,单核芯片频率提高 17%,双核芯片频率降低17%。其中,“更小芯片”方案的芯片尺寸是参考芯片的½大小,“大缓存”和“双核”两个方案的芯片尺寸以及功耗要求都与参考芯片相同。注意,“大缓存”方案的最大加速比应该是+156%,图1没有显示完整。
图 2则针对三种方案的SPECfp_rate2000进行性价比评估,也是假定光刻精度提高30%(尺寸缩减50%),相应地,单核芯片频率提高 17%,双核芯片频率降低 17%。为进行性能和性能价格比分析,我们假设:- 双路“裸”系统(带有磁盘、内存和网络接口,但没有 CPU)成本为 1,500 美元。
- 基本CPU 配置为 2.4 GHz 单核处理器,配备 1 MB L2 缓存,成本为 300 美元。
- Die设定为CPU 核心和L2 缓存约各占一半,其他片上功能限制在Chip全部区域的小区间中。
- “小型芯片”配置为 2.8 GHz 单核心处理器,配备 1 MB L2 缓存,成本为 150 美元。
- “大缓存”配置为 2.8 GHz 单核心处理器,配备 3 MB L2 缓存,成本为 300 美元。
- “多核”配置为 2.0 GHz 双核心处理器,每个核心配备 1MB L2 缓存,成本为 300 美元。
下面,我们依次看看这三种方案对CPU性能和成本的影响:
1)生产更小的芯片
显然,更小、更便宜的芯片加上适度的频率提升,在性能和性价比方面能为用户带来适度的价值。如图1,处理器价格的下降可以将系统整体成本降低 14%(1,800 美元Vs. 2,100 美元),而 17% 的频率提高可以带来 0- 14%的性能提升,中间值和几何平均值为 8%-9%。结合这两种因素,性价比可提升17%-33%,其中间值和几何平均值为 27%-28%,如图2所示。
2)增加大量片上缓存(On-Chip Cache)
与其他方案相比,增加大量缓存可以带来更灵活的性能提升空间。如果将 L2 缓存从 1 MB 提高到 3 MB ,性能提升幅度为0%-127%,其中间值为 0%,几何平均值为11.8%。如果CPU频率提升17%,同时缓存大小也增加,则可以带来更多的收益——这两个因素相结合后,性能提升可达0%-156%,中间值为11.5%,几何平均值为22.5%。注意,这里假设芯片的成本与参考系统是相同的,因此性价比与纯性能的提升比率相同。
3)增加CPU 核心
对许多工作负载来说,增加核心可以改善吞吐量(throughput),其代价是需要适当降低频率(如17%),以满足功耗/散热方面的要求。这里我们假设50%的尺寸缩减可以容纳2个CPU核心,跟参考芯片一样,每个核心带有1MB L2缓存,而且成本也相同。跟参考平台相比,在运行单一进程时,性能会降低 0% - 15%,中间值和几何平均值为 -10% 到-11%。
但如果我们使用第二个核心来运行第二个代码副本,那么系统吞吐量可以提高 0%-54%,中间值和几何平均值为 29% - 32%。这里,我们假定芯片的成本与参考系统相同,则性价比与纯性能的提升比率也相同。
上面三个方案提供了大量令人困扰的性能和性价比指标——70 个相对值。就算将每次SPEC基准测试的14个性能值减少到3个(最小、几何平均、最大),我们仍然需要面对9个性能值和12个性价比值(其中9个与性能值相同)。可见,要想充分弄清楚这些指标,并做出合理的设计决策,并不是件容易的事。不过,这三个方案都各自具有明显的优势和不足:
当然,设计什么样的CPU,除了考虑性能和性价比方面的因素外,还有许多因素需要考虑——如市场占有率、销售收入、利润、市场影响力等等,要支持芯片厂商的市场目标、业务模式和竞争策略。
在所有这些情况中,性能的变化取决于基准系统上内存性能跟CPU 性能的比值。随着内存总可用带宽的提升,大缓存的价值将减小,而多核的优势将提高。相反,相对较低的内存带宽会使大缓存更为关键,而会大大降低增加CPU核心所带来的吞吐量。
对于缓存友好型的SPECint_rate2000基准测试,以2.2 GHz运行的IBM e326服务器上的结果显示:在频率相同的情况下,将每芯片上核心数增加一倍,可以使吞吐量提高65%到100%(几何平均值为95%)。 |
|