I was giving a quick look at Slashdot when I found just another unbelievable story without any sort of source: Android ICS Will Require 16GB RAM To Compile.
At first I laughed but then I remembered that my gf was struggling a few days ago to get Android sources downloaded in a decent time. Few seconds after I was looking for news on the Internet and I’ve found this message.
ICS will be a much larger release than any previous Android release.
That means that it will also put a much bigger strain on the machines
that people use to compile it. As a rule of thumb, everything about
ICS in AOSP will be about twice as large as it was for Gingerbread.
Here are some preliminary numbers. Final numbers will probably be a
bit different, but those should be a reasonable first-order
approximation. Of course, your mileage may vary.
-6GB of download.
-25GB disk space to do a single build.
-80GB disk space to build all AOSP configs at the same time.
-16GB RAM recommended, more preferred, anything less will measurably
benefit from using an SSD.
-5+ hours of CPU time for a single build, 25+ minutes of wall time, as
measured on my workstation (dual-E5620 i.e. 2x quad-core 2.4GHz HT,
with 24GB of RAM, no SSD),
Naturally, if you plan to work on multiple branches (e.g. ICS release,
ICS development branch and AOSP master branch), you need to plan for
disk space accordingly, and you could easily end up using 250+GB.
If you use ccache, you need to expect it to use 3+GB for a single
build. Just about any non-trivial use case will require 10+GB to get a
good hit rate. If you work on a broad variety of branches or devices
and expect to routinely do full clean builds, tens of GB will be
useful, especially if you make local changes to any of the C/C++ code.
Finally, in terms of operating systems, things haven’t changed since
Gingerbread: 64-bit Ubuntu 10.04 and MacOS 10.6 (with XCode 3) are the
ones most likely to work.
It looks like I need a new computer if I want to play with Android…