您的位置:首页>聚焦>科技 >内容

ARM被用于大多数基于Android的智能手机和平板电脑中

2020-08-31 11:07:46来源:
导读优化的工具链的重要性是Android开发界中最热门的主题之一。你们中许多人可能听说过GCC和Linaro,它们是此类的两个最大项目。GCC是一手老手

优化的工具链的重要性是Android开发界中最热门的主题之一。你们中许多人可能听说过GCC和Linaro,它们是此类的两个最大项目。GCC是一手老手,最初于1987年发布,而Linaro是一个相对年轻的球员,只有四岁。让我们首先深入了解这两个项目的历史。如前所述,GNU编译器集合很旧。多年来,它已用于编译各种项目,包括Android。Google决定使用4.6和4.7版作为其默认工具链,我希望在此系列测试中重点关注4.7版。

Linaro于2010年推出,并针对ARM体系结构进行了优化。当然,ARM被用于大多数基于Android的智能手机和平板电脑中。您可以找到Linaro作为用于编译内核或整个ROM的工具链,许多开发人员声称此工具链比GCC更快,功能更强大。

受开发人员Admin Pulser_G2的启发,我决定尝试一下这个神话,看看这些说法是否真实。为此,我首先下载了AOSP源代码。我使用Google的默认预设集为Nexus 4构建了aosp_mako-eng目标。完成otapackage之后,我准备准备闪现183115481字节的zip文件。之后,我下载了Linaro 4.7.4工具链,并在prebuilts / gcc / linux-86中替换了GCC 。我进行了必要的更改以设置优化的O3级别。由于AOSP仅支持预构建的内核(无修改),因此我使用Linaro自行构建了内核,并用自己的Blob替换了mako内核中的内核。

在下面,您可以看到两个结果存档。如您所见,Linaro归档文件稍大,因此此工具链实际上可以对bin和xbin文件夹进行某些操作。内核文件本身也更大。

但是文件大小不是最重要的。相反,让我们专注于性能。为了衡量这一点,我使用了AnTuTu基准测试。为了提高精度,我对每个测试运行了三次。如下所示,差异很大。但是,我不会对这些测试过于盲目,因为每个测试的结果都不同。也就是说,Linaro比GCC好几个点,但是AnTuTu并不像您想象的那样可靠。

使用3DMark执行了以下测试,以查看工具链是否会影响图形性能。这种差异甚至比Antutu更为明显。使用GCC可以获得的FPS很少,但是使用Linaro可以使整体平滑度更好。分数也更高。

最终测试是使用游戏《沥青8:空降》进行的。在下面,您可以看到在两个工具链上都运行的两个游戏视频。第一个由Linaro制造,第二个由GCC制造。我个人认为Linaro感觉比GCC光滑,但这可能只是安慰剂作用,因为这不是双盲测试。这两个内核都是现货,没有任何调整,超频和任何其他可改善性能的调整。

免责声明:本文由用户上传,如有侵权请联系删除!

猜你喜欢

最新文章