A new chip is claimed to improve smartphone efficiency by making use of 'dark silicon' – the numerous transistors on today’s chips that are underused because there's not enough power to utilize them all at the same time.
The new GreenDroid chip prototype from the University of California San Diego should deliver improved performance through specialized dark silicon processors designed to run heavily-used chunks of code, called 'hot code', in Android.
While chip makers can now make similar processors by hand, the UC team has developed a fully automated system. It generates blueprints for specialized processors, called conservation cores, from source code extracted from applications.
GreenDroid conservation cores use 11 times less energy per instruction than an aggressive mobile application processor, says the team.
Accounting for code running outside the conservation core still results in an increase in efficiency of 7.5 times compared to an aggressive mobile application processor, they say.
“Smartphones are a perfect match for our approach, since users spend most of their time running a core set of applications, and they demand long battery life," says professor Steven Swanson.
"As mobile applications become more sophisticated, it’s going to be harder and harder to meet that challenge. Conservation cores offer a solution that exploits a resource that will soon be quite plentiful – dark silicon."
The team used dark silicon to build specialized circuits for specific tasks frequently performed by popular smartphone applications such as Web browsers, email software and music players. The computer scientists asked ‘where does most of the computation happen?’
They took answers to this question, and fed the relevant code into their automated tool chain.
"A chip that does MP3 decoding… people can build specialized logic for this by hand, but it’s an enormous amount of effort and this doesn’t scale well. Our approach is automated," said graduate student Nathan Goulding.
The scientists input pieces of code shared by multiple software applications for Android phones. The output at the end of the automated chain is a blueprint for specialized hardware which will execute some regions of the software code. The rest of the code, known as 'cold code', is executed by the phone’s general processor.