A few weeks ago we saw some interesting stock Android code optimization, done by the Linaro team, an organization that works on optimization software for the ARM architecture (Linux, ARM, etc). Their optimization improved Android’s browser performance in Sunspider by 30%, which is a healthy improvement, and they also improved CPU performance for 3D tasks by up to 100% in certain scenarios.
Its assumed at the time of this writing that everyone thought that CyanogenMod will soon adopt this optimized code. But apparently, Steve Kondik, the founder of CyanogenMod (now working at Samsung) decided against it. Here’s his reasoning:
“Patch Set 1: I would prefer that you didn’t submit this
I think I am just going to make an executive decision here and say that we aren’t going with GCC 4.7.
AOSP master is moving to GCC 4.6, which is a step in the right direction and is much more stable. If we want to work with a new toolchain, this is a better choice.”
He’s basically saying that the stock Android is barely moving to the GCC 4.6 toolchain, which is a lot more tested and mature, while Linaro is on the bleeding edge with the GCC 4.7 toolchain, which could break compatibility and create some issues for developers. Steve thinks it’s better to stick with the toolchain Google is using right now to maintain full compatibility and not break things.
This doesn’t mean that CM won’t use the code optimization Linaro came up with in the future. Even Google might use them when they are moving to the GCC 4.7 toolchain, maybe with Android 5.0 this fall. But this also signifies a bit of change in strategy for the CM team. CM is now more focused on compatibility across many more devices than in the beginning, when they only had to worry about a handful of them.
The good part is that this will make it easier for those developers who are building custom ROM’s on top of CM ROM’s, so if you want to go with other ROM’s you’ll still benefit from whatever CM9 has, plus all the bleeding edge tech being added by the custom ROM developers for those specific ROM’s.
What do you think of this development? Do you think it could affect CM in the long run? Let us know your thoughts below.