继续聊聊极客湾测试背后的问题 您所在的位置:网站首页 geek是啥文件 继续聊聊极客湾测试背后的问题

继续聊聊极客湾测试背后的问题

#继续聊聊极客湾测试背后的问题| 来源: 网络整理| 查看: 265

视频做得比较仓促, 很多观点表达得不如图文周密, 再聊聊这个事情.

极客湾这期「深度揭秘手机芯片能效!到底谁功耗最高?为什么会翻车?」的视频存在的问题, 是层层递进的.

极客湾的基本思路, 是想利用 GB5/GFXBench 这两个跑分软件, 去还原芯片 CPU/GPU 两个部件功率-性能曲线, 从而实现不同芯片之间的能效对比. 

思路上, 手机芯片的能效只是功率-性能曲线那么简单? 或者说手机的日常功耗是AP应用处理芯片/CPU占主导? 显然不是.

就拿基本的来说, 我手头用的 Pixel 6 Pro, 用着「比高通火龙更火龙」的 Google Tensor 芯片, 2K120 典型亮度飞行 Wi-Fi 下滚动知乎时间线, 电池放电功率 400-1000mA/1.6-4W 左右, 加载回答的时候会瞬间跳到 1000-1600mA/4-8W 左右.

之所以我选择用「左右」表达, 不仅是因为一秒一回报的电池电流跳变很大, 我用同样的充电头网的功率计, 在确认电池完全充满(插电, 放电/充电电流不超过 10mA)的情况下进行测试, 跳变依旧大的吓人.

回过头来看, 就单纯这个场景中出现的功率, 变化差距非常大. 滚动已加载时间线对比App静止状态, 功耗就能翻倍; 加载的片刻, 输入功率瞬间上 10W.

而 GB5 这样的跑分软件, 并不能直接还原用户日常的使用场景; 更不用说实际 UI 渲染并不是简简单单的纯粹单核渲染或者小核/大核核心簇渲染. 

就拿刚才的滚动时间线来说好了, 三个核心簇都是 30-40% 左右的占用率, 小核站在 1.2G 中低频下, 而大核超大核在低频下.

很显然, GB5 根本不能还原这样的日常使用多核心频率和负载. 这个大前提就不满足.

而且, 极客湾完全没有把 GB5 吃透, GB5 测试本身也有很多不适合于计算能效测试的地方. 

这点也是我在视频里重点强调的问题, 也就是他们这个能效曲线是否可靠的小前提.

首先我们需要介绍一些 GB5 的分数计算方法:

GB5 的加密、整数和浮点三大块是有加权的算术平均, 分别占 5%, 65%, 30%

整数、浮点的分数, 由其中每个项目的几何平均分得出

而每个项目的运行速率(Rate), 在运行多次之后取平均, 对比 i3-8100 这个 1000 基准分点, 得出这一项的分数

i3-8100 代表了 1000 分的基准点, 每个项目比他快 N 倍, 就是 N*1000 分

而在极客湾去年 A15 视频里, 其 Total-AVG-P 这一项是直接进行算数平均, 违背了GB总分加权和几何复合的规则. 

由于这三块场景能耗不同, 权重占比还倒挂, 这就带来了系统性误差.

这块我分析了下, 大概一前一后误差叠加能到 7%. 

有极客湾的粉丝说, 不就 7% 的「误差」. 但问题是 Android 芯片之间靠的还是很近的, 7% 都够人家一代了.

再提一嘴, 做这种图, 曲线和点的拟合也是很重要的元素. 

当然, 极客湾也辩解这一次他们对三块的功率加权了, 但是仔细一看, 他们每一块内部的平均用的是 AVERAGE(算数平均), 而 GB5 选用的是 GEOMEAN(几何平均).

为什么要用几何平均, 这是因为要反映「平均快了多少」. 比如 A 芯片整数 1500 分, B 芯片整数 1000 分, 1500:1000=1.5, 反映 A 芯片平均整数成绩比 B 芯片快达 1.5 倍.

之所以算数平均并不适合反映这种「平均快了多少」, 是因为 「A芯片某个整数项分数/B对应的整数项目分」这个比例的算数平均数, 不等于 「A芯片整数各项目算数平均/B整数各项目算数平均」. 

同样的例子也在金融的增长平均的计算上.

到了对比「能效比」的场景, 极客湾定义了一个能效分, 其算法就是 性能/功率, 我们依旧可以发现: 「A芯片某个整数项的能效分/B对应的整数能效分」这个比例的算数平均数, 不等于 「A芯片整数项目的能效分算数平均/B整数项目的能效分算数平均」. 

很显然, GeekBench 犯了一个错误, 就是最后不应该加权平均, 因为这样就失去了可比性. 换句话说就是 A 芯片单核 2000 分, 不代表比 i3-8100 每个项目平均快 2 倍.极客湾去年的视频的平均功耗没有按照 GB5 的标准加权; 这一次总功耗加权了, 但是整数/浮点功耗用算数平均算, 都是错的.而如果用了几何平均, 就不再使用算数平均里的加减分配/结合律了. 其功率如果继续带入粗糙的「主板功率」, 就会进一步引入系统误差; 外加刚才 GB 加权总分的问题, 可谓错上加错.极客湾 SoCPK 网站, 也用的是单核分/多核分的加权算术平均, 同样是引入了算数平均不可比例对比的缺陷, 错了还错.

而上面的前提是: 我们能得有每个子项目运行的功耗. 极客湾测试的图, 是长这样的.

可以看出, 每个子项目会有一定的间隔(1000ms), 而且项目内部的波动, 也反映出一个子项目其实会跑好几轮, 代表几次的输入.

但是我就好奇了, GB5 每个子项目波动那么大, 比如上面的高斯模糊, 后半段只有前面半段的一半功率不到, 怎么算?

ML 机器学习(单核最后一项), AES 加密(多核第一项) , 我也跑出了类似的模式. 可这一个尖峰两边 200ms 不到, 我这里请教下, 这个平均是怎么算出来的? 你们怎么保证这个值的可靠性与代表性?

至于测试仪, 我用的是 KM001C, 接在 XDR 显示器背面最高能走 12W 的功率, 完全够用了, 顺带还能接个 Xcode 的 Profiler. 散热状况/进程数据都有... 讲真这玩意直接怼日常使用 App 和游戏, 比 perfdog 强多了.

KM001C 已经停产了, 如果想要重现测试, 可以考虑入个 KM002C, 大家可以看看 GB5 这玩意要拿来测能效有多荒唐...

极客湾整个视频看完一圈之后, 给我的感觉就是: 他们不仅下决心为 GB5 这坨屎「屎上雕花」, 还套上了不同的模具, 做出多个低功耗频率点/小核心中核的能效曲线出来...

Root 后 Scene 改频率/iOS 越狱限制最大省电模式功耗, 都不算太难. 我也尊重极客湾花了很多时间和金钱去准备这些 Root/iOS 越狱测试机. 就有个比较让人好奇想问的问题, 控制功耗能理解, 但是在这种情况下手动调度三个丛集的核心, 是怎么做到的.

比如频率-功耗图, 很显然是需要上下尝试才能做到的

回头来看, 上面提出的都是峰值功耗下的就存在、且能产生系统误差和偶然误差的问题. 如果峰值状态下这些问题都存在, 非峰值状态(全小核, 关部分核心)问题就会更大. 这就是为啥 PC 测能效曲线喜欢用 R23, 周期长, 而且都是标量为主, 不求日常体验, 但求不像 Prime95 那样爆炸.

而且, 这些进阶测试的前提是搞清楚主板/SoC 下具体的功率构成.

就比如, Mac 这边的 GB5 测试用 Powermetrics 就可以看出来, 其实 CPU 功耗也只占了 Package 的 50-80%, 内存和总线占比非常可观.

Android 这边处理器缓存小, 总线和内存的压力会更大, 不然也解释不了GB5多核整数功耗比浮点更高的情况.

图形测试也是如此, M1 跑 OpenGL 的 Unigine Heaven, 10W Package 功耗, CPU 大核2W, 小核0.2W, DRAM 1.6W, GPU 5.8W, GPU 也就占了总 Package 的 60% 水平. 

而且如今的 Apple Silicon Mac/iPhone 用的都是 PMIC 供电. 所谓主板功耗还要经过各种 DC-DC/LDO 才会到达指定的 IP 核区域. 底层的思路就是让 PMIC 去进行降压, 减少在半导体上过高电压带来的非线性损失.

很多网友说应该用 GFXBench 的 VK/Metal. 这个说法是对的, 因为如今不管是 Mac 上的 GL, 还是新的 Android 上的 GL, 通过 Angle/MoltenGL 之类的 API 转换, 其实执行底层已经是 VK/Metal. 如果跑 GL 其实就是在额外考验 CPU.

我相信上述回答已经算是基本说明了极客湾这一系列视频存在的问题. 至于「你行你上」之类的要求, 我只能说, 希望大家认清手机不是像 PC 装机一样的 CPU+主板+显卡+SSD 这种简单系统, 而是高度集成化, 从调度到设计都在尽可能降低功耗的系统. 

就比如刚才的 Powermetrics 测功耗, 虽然在极低/高指令下会有较大的偏差, 但是其至少说明了 Package 内部器件的大致功耗比例. 同时如今 SoC 的能效调度, 还有 Thermal State/P Satae 的判断, 都是用软件功耗模型辅以其他传感器数据共同得出.

如果连这点都没意识到问题, 那到这种做法无异于刻舟求剑, 就算打捞到剑也不是原来的那一把了. 而如果硬要说「结论是对的」, 那我只能说这种从头到尾都能找出缺陷的测试流程, 无异于是在做证明题.

哦顺便, 这道证明题用到的数据还经常变, 比如原来 A14 峰值功耗 6.72W, 算起来能耗比分高过 A15.

到了最近这期视频, A14 就变成 8.X W 了, 前后多出了 1.5W, 是不是应该解释解释?

当然这类情况细心的网友也发现不止一例, 欢迎评论区补充.

如果说手机芯片这样去测能效比是「不专业」, 那么之前 i9 降压/只看核心部分耗电35W 对比 M1 Max 跑 R23 论证能效比,

还有用 25-50W 的 R23 能耗曲线, 每个性能点低 20% 功耗, 论证这是 6000 续航长的主要原因,

这两次就可以算是非常牵强, 甚至有点故意为之的「证明题」了.

至于说能效如何影响体验... 我转条肥威的微博.

最后再说说我这期视频的一些考虑.

有人说我蹭流量. 那这点我不否认, 毕竟谁不是蹭流量? 但问题是, 视频里、回答里呈现的一系列见解, 是我自认为有一定研究和理解的地方, 算是我发这期视频的主要动机.

有答主提到, 「另外,视频中存在部分针对极客湾的嘲讽性攻击言论,属实是有点自掉身价。」

这点我解释下, 可能引起争议比较大的是: 「实际上反映出数码爱好者的知识水平和极客湾也基本在一个水平线上」.

那这句话, 在很多人眼里是针对极客湾和极客湾粉丝的嘲讽. 这么理解也说得通, 但是如果前后关联下, 其实指出的问题是「极客湾有意把问题简单化, 让观众更容易理解, 抓到其中的『梗』」.

那这种做法, 其实就是流量密码的核心了, 就是把复杂的知识加以简化, 以娱乐化的内核传达出来.

当然也有人说我这也不叫「自掉身价」, 毕竟我没「身价」. 嘛确实, B站2W粉小透明没人百大零头多; 有人说我这期视频是收了厂商「黑钱」, 那请问是哪一家呢?

从另外一个角度看, 粉丝量做上去之后的代价和压力也是有的. 极客湾从泛PC装机专项围绕芯片为主的数码 UP 主, 能做到百大说明其话语的影响力能左右一家公司数代产品的「盖棺定论」, 这点离不开他们的粉丝把他们的视频中的梗奉为圭臬, 梗的强度和密度都在提升, 但这也让正常的因果推进和论点表达成为障碍.

而且我也注意到, 曾经有些极客湾玩的梗, 或者用的词, 是知乎上最早开始讨论并被冒用的. 比如 M1 那一期视频, 很明显混淆分支预测和乱序执行的概念. 而且用到的一些关于「超宽」「x86税」之类的梗, 在知乎上早就玩了一个多月了.

如何看待苹果M1芯片跑分超过i9?1994 赞同 · 272 评论回答

顺带一提, 后面的一期 888 视频云飞操刀, 播放量直接 x3, 确实有点厉害.

观察下来, 互动的极客湾粉丝中, 七成评论有严重的逻辑问题, 俗称诡辩; 两成属于没理解到位, 片面反驳; 一成极端粉丝和当初赛雷的 3-5 成极端粉一样, 要么辱骂要么找黑历史, 玩「成分论」.

高强度玩梗, 加上硬核专业设定的频道调性, 也许能让极客湾在 B 站坐到比 LTT 之于 YT 还要高的地位, 但也更容易迎来反噬. 或者是被新的内容基调和商业模式取代.



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有