Borkar所提的将更多小型核心整合在一起的建议,可能在性能上会比较大型的复杂核心低,但整体的运算吞吐量(throughput)却会高很多。
他指出,与其设计一颗具备10亿逻辑闸的晶体管,不如把10个大规模的、由1亿晶体管构成的核心整合在一起,这将使设计工程师能把100个、甚至1,000个中等规模的、由1,000万晶体管
构成的核心整合在一起。
Borkar表示:如果你反过来应用Pollack定律(Pollack isRule),更小核心芯片的性能会随芯片面积的平方根而减少,但功耗的降低是线性的,这就导致功耗大为降低,而性能下降反而更少。Pollack定律说明,性能的增加基本上与复杂性增加的平方根呈正比,因此,处理器中的逻辑电路增加一倍,将使性能增加40%以上。
另一方面,多任务处理技术有可能提供接近线性的性能改进,Borkar表示。用两个更小的处理器来替换一个大的单颗MPU,有可能把性能提高80%以上。此外,采用更大数量的小型核心也会使运算吞吐量呈线性增加。
Borkar补充:尽管在相同的芯片尺寸和相同的功率电路(powerenvelope)中,一个由许多核心(many-core)组成的系统确实比一个多核心(multicore)系统提供更高的运算吞吐量,但它可能很难获得满意的性能。
Borkar指出,一个具有数百或数千个小型核心的超多核心的架构,需要设计工程师找到一种对系统功耗进行严格管理,并提供一种最佳化的芯片上网络(on-dienetwork)。
(转载)