[AT&T LG Optimus G] :
So I have been testing the LG Optimus G E970 AT&T for quite some time now.

What I found is stock, non-stock, custom kernel, stock kernel, custom rom is it doesn't matter what choice is made, Battery life sucks. Wouldn't you guys much prefer a couple days compared to a half a day?

The absolute best way to obtain good performance at least acceptable performance and get days and days of battery life is simple. Primarily it has to be Cyanogenmod 10.2.0 Official Stable Release on stock kernel.

Cyanogenmod 10.2.0 by stock though gets about 15 hours as stock does. Though there is a couple cool things to do to get insane battery life. First is proper calibration by draining to absolutely dead. In terms of Android auto-shutdown, then boot up to recovery screen or bootloader. Let it sit on the bootloader until it's dead as a door nail. Prepare for a device which may not turn on with or without power period. It would appear bricked/ dead, however its far from that. This is a force calibrate procedure and if it doesn't power on or respond to power after that it's clear the battery is heavily damaged from improper charging. I had to remove the nano screws on bottom, and nano screws holding the battery ribbon connector. Which I left the screws out for easy quick battery access in the future. I had to disconnect the battery ribbon, then plug in power and watch it start up to lightning bolt charging mode. I then unplugged and plugged in the battery ribbon. This time it started charging from absolute 0%. I charged it from absolute 0% to 100% without stop. It will then be properly calibrated and will stay that way as long as you charge appropriately when it dies or gets below 5%.

You must leave developer options disabled as well as it'll force interactive as governor. Range by stock 384-1512mhz. You will need two apps one is DS Battery Saver and set it to Slumberer, and in options settings deepsleep uncheck check background data and battery triggers to ignore. This alone will force 24-36 hours with full 1.5ghz performance but will lose 25% per hour heavy use as normal.

Next step will be download MULTICORE CPU CONTROL FREE. Set Core 1,2,3 to always disabled and set Core 0 to max 702Mhz via custom profile select profile save.

The difference between running on a single core at 702mhz vs all 4 at 1512mhz is a delay in milliseconds.

1512mhz on all cores give less than 100ms delay of response and gives horrible battery life while in heavy use. It will lose a couple percent per minute while in use.

702mhz on one core gives roughly 750-1750ms delay response. That means it is 17.5 times slower though the battery life is insane! Even my mind runs fast and I can deal with that delay no problem, even with how picky I am about snappyness.

Now on every boot you pretty much need to go to the profile edit and re-save if you set auto apply on boot up it'll still ignore it. So edit profile save on each boot and check time spent in states to make sure only core 0 is active 100% of the time and at 702mhz max.

So far I have achieved 1% loss per hour while in heavy use. Which should in theory approach and exceed 99 hours on battery without charge. However realistically it'll achieve now more than a day and could last closer to a week when idle!!!

Anyway Good Luck Guys!