会员登录 - 用户注册 - 设为首页 - 加入收藏 - 网站地图 华为麒麟处理器为何要死磕超线程?因为手机超线程只有华为玩得转!

华为麒麟处理器为何要死磕超线程?因为手机超线程只有华为玩得转

时间:2024-05-19 05:41:39 来源:成都工作室-成都品茶网-成都品茶 作者:热点 阅读:694次

文 | 小伊评科技

华为麒麟9000S以及麒麟9010在性能端虽然和目前主流芯片的华为何死差距仍然比较大。



但是麒麟器他却有一个手机行业量产芯片上从来没有的功能——CPU超线程技术(Simulate MultiThreading,简称SMT)

麒麟9000S以及麒麟9010都是处理超线程1+3+4的八核心设计和其他主流手机芯片并无二致。


CPU超线程技术

但是磕超这俩芯片的大核心却都支持超线程技术,分别多分裂出来了四个线程,线程于是因为有华就组成了1+3+4+4的8核12线程的规格

我们要先说清楚,手机超线程这个玩意,为玩并不是得转一个什么新鲜的玩意。

这个技术在桌面级CPU上非常常见,华为何死比如英特尔最新的麒麟器酷睿I7 14700就是20核28线程。

笔者注:根据可靠情报,处理超线程在15代酷睿处理器上,磕超可能会取消多线程技术,线程当然了该消息还没有被完全证实,因为有华需要辩证看待。

而超线程技术最早其实源自于IBM,名称叫做同步多线程,后来被英特尔拿过去直接改名为了超线程技术



但是,在手机芯片领域,麒麟9000S确实是目前首款采用超线程技术的商用芯片,更严谨一点来说应该是首款大规模商用的手机芯片

01

超线程技术深度解析:有利有弊,在移动端弊大于利。

我们就先来解析一下,为什么要使用超线程技术以及超线程技术到底有什么优势以及劣势。

想要解答这个问题我们首先要先知道CPU是怎么工作的。

CPU内部一般有两个单元组成——控制单元处理单元



这俩玩意听起来很拗口,那么咱们来做一个形象的比喻,让大家更好的理解这个话题。

这个控制单元就是老板,是发号施令的,而这个处理单元就是员工,主要是来干活的。

正常情况下,都是老板(控制单元)给员工(处理单元)发送一个指令,然后由员工(处理单元)来进行处理。

在没有引入超线程技术之前,员工(处理单元)都是一件事一件事干,把一件事完整的干完,才能干下一件事。

然而,在实际的运行过程中,芯片的开发者发现,有些时候这个员工(处理单元)他会偷懒,并不是满状态输出。

因为处理器的处理速度是远远大于内存/缓存的交互速度的,在一个线程的某一个步骤需要和内存交互的时候,运算单元实际上就是不工作的。

那这能行吗?那必不能行,必须要榨干运算核心的剩余劳动力啊,怎么能让你躺平呢。



那么,怎么解决这个问题呢?很简单,再多给他安排一个领导(控制单元)不就得了。

多了一个老板(控制单元)就多了一个发号施令的人,让员工(处理单元)见缝插针。

这就是超线程技术的由来,本质上就是让上一颗核心一心二用,一边干着这个工作,然后再见缝插针的处理着其他的工作,彻底榨干芯片的性能,提高一颗核心的并行效率。

下面这张图就很清晰的阐述了超线程技术的原理:



注:这里只是为了方便大家理解,简化了相关步骤,其实在实际技术角度会更加的复杂。

这就是超线程技术的一个比较深度的解释。

解析完了技术原理,我们再来看超线程技术的优劣,这样大家就能够对这个技术之所以迟迟没有再手机芯片上出现有一定了解了。

「 超线程技术的优势 」

1、便宜!便宜!便宜。



生产芯片,什么最贵?除了隐形的设计费之外,就是生产费用

一款芯片的核心面积越大也就意味着一块半导体硅片上所生产的数量就越小,那么他的单体成本就会越高。

每一代芯片生产工艺的升级最归根结底的提升就是要在相同的芯片面积下放下更多的晶体管。

所以,如何在芯片核心面积不变的情况下,提升芯片的性能,这就是芯片企业的主要追求之一。

而超线程技术就是在这个背景下应运而出的一个技术。

前文我们提到,超线程技术的本质就是在已有的硬件规格上,在不提升(或者少量提升前端资源)芯片硬件规格的情况下,提升芯片处理多线程的能力。

举个例子,以英特尔为例,他就曾经披露过,奔腾4系列处理器得益于超线程技术的加入,只需要多花费5%的核心面积,就可以增加15-30%的多线程性能。

用5%的核心面积换来15%以上的芯片提升,这笔买卖怎么算都是赚的。

这就是超线程最大的优势之一。

「 超线程技术的劣势 」



任何技术都不可能只有优势没有劣势,超线程技术也一样。

超线程技术最大的劣势主要有三个:

1、会削弱核心的单核峰值性能。

因为所谓的超线程本质上就是一心二用,举个例子,就好比高速公路,原本是专路专用,六车道的超宽公路。

结果因为超线程技术的加入,有两条线路被占用了,要让给对向车道用。这样一来,这条路的峰值通行能力肯定就打了折扣。

在车不多的情况下,这点影响是无所谓的,但是一旦出现了大规模的车流(复杂工作),那么其通行能力自然也就会受到一定得影响。

所以,采用超线程设计的CPU核心的单核心能普遍都会有一定的损失,这是必然的,损失比例通常都在15%左右

2、造成功耗提升。

引入超线程功能之后,由于需要更复杂的调度逻辑以及略微增加一部分核心前端的设计,这就会导致一定得静态功耗以及漏电率的提升,从而导致芯片整体功耗的提升。

3、超线程非常依赖操作系统对于CPU的调度。

换言之,如果芯片支持超线程,但是系统本身适配度一般的话,超线程不仅不会带来正向提升,反而可能会带来一定的负面影响。

02

手机芯片厂商为什么不用“超线程”

说完了这三个劣势之后,大家应该就会明白手机芯片厂商为何对于超线程技术如此谨慎了。

因为这仨劣势那可都是直接戳到了现阶段手机芯片的“死穴”

尤其是第二条——“会造成功耗和漏电率提升”这一点,这是根本不可能接受的。

这里也直接援引ARM的测试(注:ARM在2019年发布的A65 AE就加入了超线程技术),其多核性能提升30%,功耗提升30%,漏电率提升50%

正是因为如此,ARM对于这个架构的定义就是“车载芯片架构”。

在手机芯片这边,用功耗换性能,而且还是优先级并不算太高的“多核性能”,这自然是不被看好的。

并且,手机芯片这边本身就有一套自己的解决方案——“大小核”设计,大事大核上,小事小核上。

从12代酷睿开始,英特尔就率先在其产品上使用了大小核的设计,获得了不错的结果。

以后,英特尔还真有可能直接取消超线程的设计,转而坚持采用大小核设计。

03

华为为什么坚持使用超线程技术?



华为第一代自主架构的芯片是麒麟9000S,其采用的TaiShanV120芯片就采用了超线程技术。

对于这一点笔者在之前的文章中也做过一定得解释,因为华为麒麟9000S的CPU架构本身就是直接从华为服务器级CPU架构上调整过来的。

华为在2020年发布的服务器级CPU——鲲鹏920 CPU的核心架构就是TaiShan V110,看命名大家应该就明白了。

简单来说,华为直接把服务器级的架构放在了手机芯片上。(泰山架构本身也是基于ARM体系)

原本作为服务器级的CPU架构,支持超线程是非常正常的,因为服务器CPU由于其工作特性对多线程性能的要求是很高的。

那么麒麟9000S作为被“逼出来”的芯片,来不及设计或者调整架构也很正常。

但是,在最新发布的麒麟9010系列处理器上,华为全新设计了一个CPU超大核(前后端都进行了重新的设计)

而这颗全新设计的超大核心同样也支持“超线程”技术。

这说明了什么?这说明华为想要在未来的麒麟芯片上坚持采用超线程技术。

那么这是为什么呢?华为究竟为什么要在手机芯片上死磕“超线程”技术?笔者分析有如下三个原因:

1)解决现阶段性能短板。

前文我们提到,采用超线程技术是最廉价、最简单的提升CPU多核性能的方式之一。

那么对于现阶段华为来说,由于工艺等存在劣势,其芯片的性能表现本身就存在一定得劣势。

那么超线程作为一种对性能短板的一种补足,对于华为来说自然是很好的选择。

至于额外的功耗问题,其实也相对比较好解决,只需要把核心频率设定的低一些,就可以显著降低漏电问题。

麒麟9000S以及麒麟9010也确实是这么做的,大核主频的频率非常低,麒麟9010的大核主频甚至只有2.36Ghz。

2)华为具备全链路的优化能力。

前文我们提到,芯片的超线程很依赖系统的调度

系统的设定的匹配度越高,手机的超线程越能发挥出更高的效能,反之则会拖累芯片性能的发挥。

比如,在过去的很长时间里,AMD处理器在Widnows系统上的整体调度就不如英特尔的处理器。

这说白了就是系统优化不到位。

而华为在这方面具备得天独厚的优势,华为的系统、芯片设计全部都是自己完成,那么对于芯片优化就可以达到更深的层次。

在目前这个世界上,具备这样能力企业只有华为和苹果,而且从某种程度上来说,华为比苹果更有优势(华为甚至会涉及芯片制造环节)

所以,在发展多线程这个维度,华为有着有别于其他芯片厂商的独特优势。

另外,大家其实可以期待一下未来“中小核”用上超线程的画面,相比于大核+超线程,小核心+超线程才是最佳选择。

END 希望可以帮到你

(责任编辑:焦点)

上一篇:结果出炉!韩国瑜轻声叹息,王鸿薇细数柯建铭劣迹!吴思瑶气炸!
下一篇:太失望!俄罗斯专家检查完缴获的美军坦克,称都是没价值的老货
相关内容
最新内容
推荐内容
热点内容