Building An AOSP Ice Cream Sandwich ROM? You’ll Need Hardware!


I suspect that most pocketnow readers don’t build custom ROMs to run on their smartphones. The number of us that run custom ROMs on our phones is significantly higher. Even if you only run the ROM that came on your phone, this news impacts all of us.

We’ve known for a while now that Android 4.0 Ice Cream Sandwich was going to be significantly larger than previous versions — from a codebase perspective. If you think about it, it’s got to! We have the OS bits from smartphone as well as tablet, and I suspect Android 3.1 Honeycomb, which has been updated to support Google TV, has also been built into ICS — further increasing the size.

What does that mean to you? First off, ROMs are physically bigger, so some older phones literally won’t have enough space on them to hold the system itself. Second, the added code means it’s going to take more time for ROM developers to release ROMs based on ICS.

Possibly overlooked are the build-bots. Without going into too much detail about continuous integration and automated builds, when groups of developers collaborate on a project, they use source code repositories and servers that integrate everyone’s changes, then build a ROM based on those combined changes. Generally speaking, this happens nightly (hence “nightly builds” of some of the ROMs we’re familiar with). CyanogenMod, for example, has over 50 devices that are getting ROMs built, usually every night. That’s a lot of compute cycles!

Android’s Jean-Baptiste Queru has the following to say:

“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 most developers are anything like me, this is a bit higher than the current equipment currently being used to develop. Do you develop code? If so we’d love to hear the specs of workstation in the comments below!

Source: Google Groups

Share This Post
What's your reaction?
Love It
Like It
Want It
Had It
Hated It
About The Author
Joe Levi
Joe graduated from Weber State University with two degrees in Information Systems and Technologies. He has carried mobile devices with him for more than a decade, including Apple's Newton, Microsoft's Handheld and Palm Sized PCs, and is Pocketnow's "Android Guy". By day you'll find Joe coding web pages, tweaking for SEO, and leveraging social media to spread the word. By night you'll probably find him writing technology and "prepping" articles, as well as shooting video. Read more about Joe Levi here.