Logo cn.androidermagazine.com
Logo cn.androidermagazine.com

如何欺骗基准(以及为什么我们应该淡化它们的重要性)

Anonim

无论我们是在谈论移动设备还是任何其他计算机硬件,基准测试都很有用。 但是有一个问题 - 你必须依赖每个人诚实。 让我解释。 每当您看到视频或基准分数的屏幕截图时,您真正看到的是衡量软件与硬件交互方式的指标。 有两个大问题:没有两个Android手机运行相同的软件,并且总有一些小丑想要作弊。 最近我们来自Phone Arena的朋友约翰指出,与其他手机相比,新手机的Quadrant分数太低了。 约翰指出它是好事。

当然,基准测试可能很有趣,比如看看LG的UI对于Optimus 2X与Stock Froyo的影响有多小,如果你自己运行它们来衡量你对自己的软件所做的一些改变,它们会很有用。 但我们已经结束了。 我们将 根据绩效 而不是数字来判断绩效。

在所有基准测试中,它太容易欺骗,因为它们只是Android应用程序 。 看看所有其他魔术人员使用Android应用程序,并问自己 - 基准是如此不同,以至于他们不能被“黑客攻击”? 答案是否定的,我们将向您展示如何操纵最容易(但绝对不是唯一)操纵Quadrant的人。

跳转后检查出来。

让我们通过视频的魔力,仔细看看我们将要做的事情。

用于移动查看的YouTube链接

你需要为这个例子扎根。 通过编辑代码和重建应用程序本身,还有很多其他方法可以欺骗无根电话,但这种简单的方法需要root。 你还需要一些工具:

  • 让adb工作,在shell中使用root访问权限。
  • Android Market的Quadrant Standard。 我们在演示中使用了Quadrant Advanced,因为它很容易看到作弊。 你会想要使用标准,因为它很容易看到作弊。
  • 来自Android Market的系统面板(或任何可以杀死所有进程的应用程序)。
  • 从Android Market设置CPU,或等效(如果你有一个超频的内核)。
  • 两只手,一个键盘,没有良心。

安装所有应用并重新启动手机。 让它静置5到10分钟,这样所有的同步和扫描都会完成,然后运行象限(见上图中的“前”侧),这样你才能知道真相。

将手机连接到计算机,然后输入外壳。 以root用户身份运行以下命令:

mount -t tmpfs tmpfs /data/data/com.aurorasoftworks.quadrant.ui.standard

完全按照书面输入。 这样做很简单 - 所有手机的I / O部分都是最大的瓶颈,因此我们将Quadrant数据文件夹从物理存储器移到RAM中。 RAM很好。 阅读和写作很快。 超级快。 这在重新启动时消失了,因此很容易将事情恢复正常。

接下来,我们要取消任何CPU缩放效果。 谁需要节省电池,我们想要高分! 启动SetCPU并将CPU时钟速度调到最高,并选择“性能”作为CPU调控器。 这将使事情始终保持最高速度。

现在使用您决定使用的任何应用程序(我使用系统面板来监视事物,它包括可怕的kill-all作为额外功能)来杀死所有后台任务。 如果你可以杀死系统进程,甚至更好。 我们不关心手机的工作情况,只关注数字有多高。

启动Quadrant,并运行您的基准测试。 运行两到三次以使其安顿下来,然后开始截屏。 意识到这样做是多么容易,然后想象通过对基准应用程序进行逆向工程并改变用于编写分数的数学,可以做些什么其他作弊。 添加一些其他技巧,比如在build.prop文件中更改一行或两行来夸大CPU分数,你就是金色的。 在有人说“是的,但我使用Bechmark xyz9000 Pro并且你不能欺骗那个。” 是的你可以。 即使我可以,而且那里有很多人比我更有才华。 只相信使用大量电表和电线的基准测试,闪光灯,因为其他任何东西都只是有人可以破解的软件。

现在比赛场地水平。 恭喜你,你是骗子。