上接 http://blog.youkuaiyun.com/eqiang8271/article/details/17225765 Android分布式编译学习(三)—— Ubuntu12.04上部署distcc分布式编译
引入 distcc + ccache + dumcs 提高编译效率。
如下三个表格针对使用 ccache 和 dmucs 与普通编译的测试比较, 从测试结果看 ccache 提高效率更明显, distcc分布式编译在3台主机上测试效果并不太明显:
表一 distcc+ccache+dumcs 分布式编译+负载均衡
distcc+ccache+dumcs (分布式编译+负载均衡) 编译 Android 4.4 | ||||||
测试 | PC数 | 开始时间 | 结束时间 | C编译耗时 | JAVA编译耗时 | 总耗时 |
第一轮 | 2 | 12/9/2013 10:19:16 | 12/9/2013 11:10:31 | | | 51 分钟 |
第二轮 | 2 | 12/9/2013 11:33:18 | 12/9/2013 12:26:24 | | | 53 分钟 |
第三轮 | 3 | 12/9/2013 16:50:24 | 12/9/2013 17:42:02 | | | 52 分钟 |
第四轮 | 3 | 12/10/2013 10:22:30 | 12/10/2013 11:14:42 | 27 分钟 | 25 分钟 | 52 分钟 |
第五轮 | 3 | 12/11/2013 10:22:31 | 12/11/2013 11:47:10 | 30 分钟 | 23 分钟 | 53 分钟 |
表二 仅用 ccache 编译的情况如下 50G 的ccache
仅使用ccache 编译 Android 4.4 | ||||||
测试 | PC数 | 开始时间 | 结束时间 | C编译耗时 | JAVA编译耗时 | 总耗时 |
第一轮 | 1 | 12/11/2013 15:36:51 | 12/11/2013 16:31:07 | 37 | 17 | 55 分钟 |
第二轮 | 1 | 12/12/2013 16:43:45 | 12/12/2013 17:39:44 | 41 | 15 | 56 分钟 |
export USE_CCACHE=1
prebuilts/misc/linux-x86/ccache/ccache -M 50G
表三 普通Android 编译情况如下
系统普通编译 Android 4.4 | ||||||
测试 | PC数 | 开始时间 | 结束时间 | C编译耗时 | JAVA编译耗时 | 总耗时 |
第一轮 | 1 | 12/10/2013 16:57:44 | 12/10/2013 18:30:05 | 74 分钟 | 19 分钟 | 93 分钟 |
经过这么多次测试发现3台PC进行的分布式 Android 4.4 编译效果的确不太明显,也许跟Android code 量太大有关系,后续再研究更新吧。