for everyone complaining about battery life look at this thread
http://forum.xda-developers.com/showthread.php?t=2155495
i am using franco kernel along with the paid for app version which has undervolting options.
anyway depending on the cpu you have got, everybody should safely be able to undervolt by 100mv across all frequencies regardless. so everyone can use that as a starting point but i didnt.
i have underclocked mine by 150mv so far and there has been zero stability issues.
basically i clicked one button in franco kernel app which decreases all voltages by 25mv, i then used the phone for a week, if i have zero issues, i then i decrease by another 25mv and repeat the one week's useage.
now i have hit 150mv i do not want to keep repeating the process as there is a point where it will become unstable and i may end up bricking it and having to reset everything and the whole restore process becomes tiresome, so i am happy with 150mv across all frequencies.
battery life is now stupendously good compared to before, i wont bother going into actual figures as everyone usage is different but mine is night and day difference.
here is the OP from that thread's setup
My surrent setup:
mhz - mv (difference)
384 - 700 (-150)
486 - 700 (-175)
594 - 720 (-180)
702 - 740 (-185)
1026 - 825 (-200)
1188 - 875 (-225)
1350 - 940 (-185)
1512 - 1000 (-150)
he has obviously went one step further and customised each and every frequency, obviously this is a better solution, but imo very time consuming, some of you may wish to do this, but as you can see he has been able to undervolt by as much as 225mv in one occasion and the minimum is 150mv.
therefore even if you are a noob 100mv across all frequencies should be stable and still make a considerable difference to your battery life.