• 我爱技术网-河南网站建设-上海网站建设-SEO优化-网络营销-SEO三人行

  • 专注网站建设 服务热线: 13061801310

当前位置:我爱技术网 > 新闻信息 > 正文

[评论]聊聊安兔兔

发布时间:2018-11-08 | 发布者: 东东工作室 | 浏览次数:

摘要:就算你不知道兔子是什么东西,至少你也应该听过“不服跑个分”这句话。作为跑分党中最流行的工具之一,兔子评测即将推出新版,最大的改变是修改了评分标准,使之“更准确地反映用户体验”。用跑分软件来反映用户体验是应该的,针对不断发展的硬件修改评分标准也是正常的,但是具体到了兔子……事情可就说来话长了。今天就让我们来好好聊一聊兔子吧。

靠谱的跑分软件

自古以来,跑分软件常有,而靠谱的跑分软件不常有。当然要评价一个跑分软件是否靠谱一直以来都很难,你有你的侧重,我有我的理念,但是有两点是必须做到的,那就是说什么就测什么,测什么就是什么。前半句的意思是你要为你的测试目的选择直接且合适的测试项目,后半句则表示,要用合适的测试方法让你得到的结果就是你想要测试的东西。不要说山寨分析师废话,这当然都是很浅显的道理,但是千万不要以为这两点很容易做到!要你去测量一个活人的某个器官有多重容易吗?测试往往都是单项的,但是任何单项的测试都必须运行在系统这个整体里,怎样找到一个方法,从整体中把某个单项割裂出来,不被其他因素影响,这是一门很高深的学问。做不做得到这点,直接决定了跑分软件是否靠谱。

这么看的话,兔子靠谱吗?不好说。很久以前兔子跑分的靠谱问题就被吐槽过,其中很多互相独立的项目之间存在着极强的关联性,例如内存性能和整数性能几乎是线性相关,与内存子系统的硬件配置关系的关系却没这么强。这暗示着兔子的内存性能的测试严重受处理器系统的影响,结果不一定是真的内存性能——这当然也不一定是兔子跑分的错,但是排除干扰也是测试软件的必备技能与技术核心所在,否则谁都可以写测试软件了不是(虽然现在的确是谁都在写)。

现在兔子跑分还有这类问题吗?说不定还有。

如果去看看4.0版本引入的多任务测试,就会发现在测试运行过程中处理器经常只有一个核心满载,其余核心要么负载较低,要么甚至直接关闭。这对于一个多任务测试而言是一个很不寻常的现象,不仅不寻常,更加违反了常理。反观3DMark的物理测试,所有处理器都会长时间保持100%占用率,一直到测试结束。根据说什么就测什么原则,多任务测试自然应该是用满所有处理器的,兔子的多任务测试明显不如3DMark来的更加多任务。

这当然不是唯一的问题,再观察一下图形测试,就会发现测试的CPU占用率也显得不正常的高,经常会有1~2个甚至更多的核心负载达到最大频率下的50%左右。继续对比一下3DMark,就会发现3DMark不论执行多么复杂的3D测试,处理器占用都非常低,几乎不会超过两位数,而且频率也只比待机高一点。这意味着,兔子的3D测试消耗了较多的CPU资源,最终成绩不仅会受到GPU的影响,也会受到CPU的影响,看看,说好的测什么就是什么呢?

其他项目山寨分析师没仔细研究,不过至少可以肯定,兔子之所以可以成为最流行的测试软件,是因为项目够多、测试系统更完善,更重要的是因为分数比较更直观,满足了用户和媒体之间以简单快捷的方式互相攀比的需求,并不是因为测试本身的技术含量与靠谱程度,也无怪乎有些人叫它娱乐兔。

我要更加代表用户体验

对于普通人而言,跑个分是因为想知道机器的使用体验,这是跑分的目的,也是兔子的宣传口号之一。此次兔子修改评分标准,也是打着这样一个旗号,新标准能更好的反映用户体验,而不是冷冰冰的数字。为此,兔子做了这样一些改动:增加了单线程性能测试、提升了3D测试的复杂程度、降低了RAM和I/O等测试的权重比例等。这些修改都是为了更好的代表用户体验吗?我们继续来聊一聊。

首先是增加单线程性能。增加这个当然是对的,毕竟在手机上单线程性能显然比多线程性能更重要。但这更贴近使用体验吗?还真就不一定,至于为什么兔子一直到5.0版本才开始提出这个项目,则更是一个很微妙的决定,这点非常值得深入八卦一下。

一直以来,处理器的总整数和总浮点性能在兔子里的比重都很大,这个自几年前手机刚开始普及多核时就已经是这样了。但是随着核战争的白热化,有很多厂家也自然而然的推出了一些比较奇葩的产品,例如MTK刚刚发布的八核Cortex A53。这些处理器依靠着小而多的核心设计,在兔子跑分中屡屡突破,最新的MT6795甚至已经接近50000分大关。这个分数很明显不是用户体验,因此兔子此时引入单线程测试,似乎是合理的。

但问题来了,如果这真是兔子的目的,那么它从一开始就应该引入这个测试,因为这种“弱而多”的产品并不是今天才出现,早在之前的八核Cortex A7、再之前的双四核、甚至更早之前的高通Scorpion,都是这类“弱而多”的设计。如果这样的设计得到的分数不能代表用户体验,那么兔子早在两年前就应该做出这样的改变。但实际上,兔子从多核时代一开始,就彻底而全面的拥抱了多核总性能,一直对弱而多不闻不问,即便是去年3.0到4.0的升级,双四核甚至八核Cortex A7的出现都没有让兔子做出这样的改变,这说明问题也许并不在“弱而多”跑高分代不代表用户体验,而在于是谁在这样做。

另一方面,虽然主流的声音一直是多核无用,但是随着Android的发展,多核,甚至是弱多核已经成为了不可否认的事实,在这样的事实状态下,软件开发策略不可能不做出对应的调整,程序员不可能在一个满是弱多核的世界里强行去编写需要强劲单线程才能运行的程序。可以说,这已经成为了了趋势,在未来也很难看到逆转的可能,兔子在此时高调引入单线程测试,趋势上有些说不过去。当然,站在山寨分析师的立场上,同样条件下,强劲的单线程当然是更好的,只是兔子在此时引入单线程测试,目的也许并不单纯。

第二个大改变是3D测试。兔子表示,现有的3D测试压力过小,已经不足以体现顶级硬件之间的差距,因此在新版测试中加大了3D测试的复杂度和压力,让顶级显卡之间得分的差异得到了更为明显的放大。这在技术上是对的,实际上却是错的。

为什么这么说?原因很简单,目前顶级GPU的最大功耗都已经超过了实际使用中能接受的极限,此时决定使用体验的并不是最大性能,而是在由发热、续航这样的因素决定的极限功耗下的性能。由于不论是Adreno、PowerVR、Mali还是GeForce,自去年一来各自的性能提升都远超极限功耗之外,实际运行中就是谁快谁降频,越快越降频,因此如果真正的从实际体验角度来说,各个产品的3D体验实际上是趋同的,感官差异正在变得越来越小而不是越来越大。这点相信大家也都有体会,即便不去考虑实际上绝大多数人会玩的游戏其实根本不需要多少3D性能,高端机跑得动而中端机跑不动的游戏也不多;即便有,高端机也没法一直以那个速度跑下去,一圈流比比皆是。此时,兔子加大3D测试的强度、拉大3D测试的差异,从技术角度上说没问题,但从体验角度说则是完完全全的背道而驰——事实上越来越接近的感受,跑分差距却在变得越来越大,这不是打脸嘛。

转载请标注:我爱技术网——[评论]聊聊安兔兔