下面,我们依次看看这三种方案对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%)。