大家看对不对
https://www.anandtech.com/show/1 ... -and-2950x-review/4
谷歌翻译机翻+人肉解释,也不知道对不对。
很多地方说AMD的线程撕裂者效率高、耗电低:32蛋的2990WX连250瓦TDP都跑不满。不过Anand提出了不同的观点:Uncore(非核心)部分的功耗正在超过运算核心的功耗,线程撕裂者非但不节能,而且效率正随核心数量增加而降低。
大概的原理是:核心数量多了,原有的环形总线不好用,AMD用Infinity fabric提供了各个核心之间以及核心与IO设备、内存之间的沟通通道。
但Infinity fabric的效率并不高。低负载下只有两个线程工作时,Infinity fabric一共贡献了整个处理器总功耗的73%(IF功耗56.09瓦,CPU核心功耗20.63瓦)。随着负载的增加,IF占整个处理器的功耗百分比逐渐降低到36%左右,依然不是一个小数字。超过三分之一的电没做正经事儿~
Infinity fabric效率跟核心数量有关,前面的2990WX拥有6条Infinity fabric,而在16核的2950X中只有一条。
低负载下Infinity fabric最高可贡献整个2950X处理器总功耗的59%,比2990WX的73%要低一些。
核心数量比线程撕裂者更多的EPYC处理器中,除了6条Infinity fabric之外,同个4个硅芯片全部启用了DDR和PCIE控制器,Uncore消耗的电能也就更多。
低负载下EPYC 7601中的Uncore部分甚至会贡献高达89%的功耗!!!即便在最理想的情况下,EPYC的功耗/发热里也有超过一半被Infinty fabric白白消耗,这显然是极大的浪费,14nm工艺还不够填这个坑呢。功耗大不要紧,但是同时发热也大,CPU核心就难以跑到更高的Turbo频率。
当然对于服务器来说,CPU不光需要处理密集运算,也会需要提供大带宽的内存控制器、大量的IO扩展能力(比如说更多的PCIE通道支持更多块计算卡/PCIE固态硬盘等等)。对于密集计算应用来说,低效率的Infinty fabric浪费电能增加发热毫无用处;而对于IO密集型应用,这些额外的功耗却也是必须的。
Intel的情况也差不多。用在Skylake-X中的Mesh架构取代原有Ring环形总线,在每个核心间都像有一个小型路由器,可根据需要将数据定向到周围的核心或是自身。
在7980XE中,Mesh贡献的功耗占处理器总功耗的百分比从较低的20%开始,随着负载的核心数量增加,最高可达到25%-30%。也就是说有大约四分之一到三分之一的电在做无用功(没有直接用于核心运算),多耗电的同时还挤占了能用于计算的TDP空间,CPU核心更容易降频。
没想到给CPU里塞蛋并不是那么容易的事儿,看来提高Uncore部分效率刻不容缓。当然,技术难度是一方面,态度是另外一方面。希望Intel别落后,跟AMD一起玩核战吧。你们越战我们越开心~
|