As for only them knowing, no.
In the case of this ROM, it's most likely I'll know. But, yeah, unlike the old aospCMod kernels the source is available. And, no, it's not a stock kernel (I really ought to change that description). Lots of little bug fixes, tweaks, and a hacked up USB driver. I try to keep the commits as straightforward as possible (so that / as is evidenced by Drew ganking a bunch of the changes for XioniaRedux).
As for GB, we don't have access to GB drivers for our phone, the community has had to make them. So they are not as efficient. Then there is all the extra code CM put in. Bumblebee took a stripped, efficient system and made it more efficient for speed reasons. CM is about features, not so much about speed. Harmonia stripped it for efficiency.
The P500 kernel is available, but there weren't a whole lot of changes as the kernel drivers are quite mature. LG's kinda off on their own world. What is missing is the source to the binary Froyo blobs. In most cases CM's got shims in place and they work fine, without any noticeable performance degradation. The reason /I/ want the source to some of these things is to add features that LG purposefully left out. In any case, I get pretty damn good idle battery usage (GPS aside I regularly see about 1% per hour) so I'd be surprised if CM's bloat is dragging battery life down. OTOH I have made some adjustments to make the process scheduler much more aggressive which can drag battery life down.
And this is why it's not so simple.
At a higher level it's actually not too complicated. I left ondemand as the default because it does a very good job of ramping up the CPU speed as needed, and bringing it back down quickly. With live wallpaper running I see the lowest CPU speeds with the ondemand governor. The version of smartass that's in the IHO kernel does need to be tuned quite a bit.
As for undervolting, keep in mind that anything below 600MHz will lower the voltage from the maximum (for now). The 7627 doesn't support dynamic voltage scaling in that it won't do it on its own, but you can change the voltage programmatically. Current steps are:
19.2MHz: +0 (min)
120/122MHz: +3
200/245MHz: +4
320/400MHz: +5
480MHz: +6
600MHz: +7 (max)
So, yes, I there's a good reason why LG (and I) chose 245MHz as the default minimum CPU clock speed. It will lower power consumption. I will hide 122MHz from the CM interface because that simply is too slow to be useful (and you will have delays unlocking your phone and some missed phone calls).
Likewise instead of setting the min/max CPU clock speeds to the same value use the performance (max) or powersave (min) governors which will do the same thing but avoid the overhead of trying to determine when to adjust the CPU clock speed.
For all of this talk, I will ignore complaints about battery usage when you've used the kernel for less than a day, and I will ignore it unless you're talking about usage from a fully charged battery. When your display shows 100%, that is not fully charged. Go into the about phone prefs and you'll see it'll charge for a bit after it hits 100%.
That said, I'd encourage people to do three things instead of assuming things:
- Look at the source. It's out there.
- Conduct a /controlled/ experiment.
-
Donate. Seriously. There's a rhyme and a reason to why I've chosen specific defaults, and getting there takes quite a bit of time.