我正在使用配备16Gb RAM和SSD的Intel i7笔记本电脑。除了指定-j参数并启用CCACHE之外,我还可以使用其他技巧来加快AOSP的编译时间吗?目前大约是2小时。
我发现-j12在我的CPU上具有最佳性能。
最佳答案
我有两个建议:
1.)将/tmp设置为虚拟磁盘
这是有关在Ubuntu中将/tmp目录设置为ramdisk的绝佳链接
http://cpiekarski.com/2013/01/02/speeding-up-aosp-builds/
为此,您需要做的就是将以下内容添加到/etc/fstab文件中:
ramdisk /tmp tmpfs mode=1777,size=2g
大小等于您要使用的ram数量。在这种情况下2 GB
2.)交换使用
再次链接:
http://ubuntuguide.net/optimize-the-usage-of-swap-to-speed-up-response-for-ubuntu
要检查交换因子,请打开终端并输入:
cat /proc/sys/vm/swappiness
使用以下命令暂时将swappiness的值更改为10,并将在下次重启时将其恢复。
sudo sysctl vm.swappiness=10
要永久更改该值,请在文本编辑器中打开/etc/sysctl.conf并更改vm.swappiness的值。如果此值不存在,则将其添加到末尾,例如:
vm.swappiness=10
如其他文章所述,make -j和CCache也是非常重要和有用的。有一个名为schedtool的程序可以调度CPU进程。他们声称它适用于长时间运行的非交互式任务(即AOSP构建),但是我还没有尝试过。
干杯和快乐大厦
关于performance - 加快Android(AOSP)的构建时间,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25790732/