Android is an ever-expanding platform and with each passing day it becomes a larger project, that requires to work on numerous hardware configurations. Thus Google is focusing more on compatibility rather than on just performance. In Android 4.0 version, the GPU was enabled to do the graphical
work, instead of leaving it to the CPU that resulted in some significant performance improvements.
Undoubtedly the ICS version more about looks rather than performance. ICS revamped the looks department and made everything prettier and more polished. All this needs higher resources to make it work all smooth, specifically the RAM department. Google has suggested that smartphones with ICS should have a minimum of 384 MB of RAM and CyanogenMod team has commented that the CM9 can be ported to smartphones with at least 512 MB of RAM.
The team at Linaro that works to optimize software for ARM architecture, has done an amazing job by optimizing the latest Android 4.0 version. Running on the same TI OMAP 4430 hardware, the new optimized Android software offers up to 2x improvement in performance as compared to the stock Android 4.0.4. Most of the improvements are CPU-related but they are also showing a graphical object to test the performance. They have managed to double the FPS for this particular test along with increasing the Sunspider performance by 30% that is indeed a big deal.
Most of the improvements were possible because of tool chain and code optimization. Linaro will submit the changes to AOSP and CyanogenMod can opt to use them if they want to even before Google does it. You can watch the video posted below to check out how the Linaro team has achieved have achieved double Android performance by just modifying the software. We also suggest you to visit the source link for his comment (Bero) and further explanations on this project.