Hey guys, Sorry... I havent had this phone in forever.. This will not be updated nor will I be answering questions about it. Its pretty much outdated as well. Good time while we had it!
Here is some information regarding kernels that I've collected from people off of this forum and the internet. This work is mine, but I just reworded it to make it work. I thought I'd compile it for future users that have questions.
Now updated with some of the more popular kernels at the bottom. Make sure you select the one that corresponds with your kernel style. ( i.e. Sense or AOSP )
Miscellaneous Tid-Bits:** If you take any part of this please give me respects and XDA respects **
** Once again! First and foremost, make sure you flash the correct kernel for your ROM. That means if you have a Sense ROM, then you can flash only sense kernels. Same applies for AOSP ROMS can only run AOSP kernels.
** Also SBC kernels seem to be messing up batteries, and I would say that it would be related to that style of charging ( http://forum.xda-developers.com/showthread.php?t=890448&highlight=casualties ) so tread lightly. HTC built that charging style ( almost instant drop to 90% battery life after it is disconnected from the charger ) to protect the cells from being " too full ". Li-Ion batteries aren't meant to be trickle charged. I myself do not recommend it, the same goes for many DEVs too. It is still offered by a few Devs out there, so make sure it doesn't say SBC ( if you don't want SBC ).
** If you are using a HAVS or Static kernel ( this applies to any version of HAVS ) Do not use SetCPU, because the kernel and the SetCPU will be counterproductive.
** I do recommend to run Juice Defender still regardless on which style kernel you pick to run. There will be no complications with the kernel and Juice Defender.
** Quadrant and Linpack scores mean nothing!
** There are two main styles of kernels, they are CFS and BFS.
Kernel Information
CFS = Completely Fair Scheduler
CFS kernels tend to focus on the system as a whole, and CFS is the default in the mainline Linux kernel. CFS's are efficient for lighter or standard tasks, think texting and web browsing here. The stock kernels that we run from HTC are CFS kernels. The CFS kernels typically give you the best battery life as well. Though it's worth pointing out that while CFS does attempt to be more fair with respect to all running processes, the mainline kernel DEVs have implemented some ideas that originated with BFS into CFS.
Here is more information on CFS: http://en.wikipedia.org/wiki/Completely_Fair_Scheduler
BFS= Brain **** Scheduler
BFS kernels tend to focus on whatever app is running in the foreground, think of a graphic intense game here. So a BFS kernel may give you better Quadrant scores, which shouldn't be the end all for someone choosing a kernel. The BFS is a 3rd party scheduler that the DEVs have to patch into a CFS kernel ( which in turn makes it into a BFS kernel ) . These kernels can tend to be laggy at times too.
Here is more information on BFS : http://en.wikipedia.org/wiki/Brain_****_Scheduler
Then there are sub-styles of these CFS and BFS kernels. Those being No-HAVS, HAVS, Static Undervolting, SBC and smartass governors.
HAVS = Hybrid Adaptive Voltage Scaling
Non-HAVS = Non Hybrid Adaptive Voltage Scaling AKA Static Voltage Scaling
HAVS built kernels, both less aggressive and more aggressive builds, are based on the idea by allowing a range of variable voltage levels at each speed setting. Which basically means the amount of current the system draws from the battery fluctuates according to what it needs ( based off of the process at hand ). HAVS dynamically scales the voltage supplied to the CPU at any given speed, erring on the side of lowest power draw, in an effort to enhance power saving. The theory is that if the load isn't significant enough, it may be possible to lower the voltage more than the static setting, and in terms saving that much more battery. But also it can raise it higher than the static setting if it sees fit.
For an example in a More Aggressive HAVS kernel the speed of 245mhz has a range of voltage values that can be used. The ranges are from 900-950mV. So if the load is low enough, instead of sending 925mV to the CPU only 900mV will be sent ( saving battery ). Now if the load is big enough to call for more juice than 925mV (which is the static setting), the HAVS ( inside of the kernel ) can send up to 950mV to the CPU at that 245mhz speed. The voltage of 950mV is the max HAVS can send at a 245mhz speed. ( Keep in mind these voltages are not the same for all forms of HAVS, so the voltages will vary between DEVs and which kernel your looking into. This was just an example from Netarchy's More HAVS table )
No-HAVS built kernels use Static voltage scaling and do not use undervolting. These will not alter the amount of current at one set CPU speed. So no matter what process is being ran, it's still going to provide that dead set amount of current to the CPU. Thus burning battery life for smaller tasks, as it would use the same amount of battery for heavier tasks.
Not all EVOs can run a HAVS built kernel. Most should try out the More Aggressive HAVS kernels, and if your phone acts funny ( Force closing, Camera issues, if it doesn't reboot etc ) then you should try the Less Aggressive HAVS kernels. And if still you're in the same boat, then last resort is to use a Non-HAVS kernel. Then you can run something like SetCPU to help out to throttle down the CPU at times.
Static Undervolting
Remember how I said that HAVS can fluctuate how much power it draws based on CPU load and battery temperature? Well when the kernel is not using HAVS, it is going to use Static Undervolting. Static Undervolting is when each frequency uses less mV then it normally would call for, but those numbers are set in stone. They will not fluctuate like HAVS would to save battery life. For example, the stock default voltage for the 998mhz setting is 1300mV.If the static voltage table is altered so that the setting for 998mhz is 1275mV ( this is what a Statis Undervolting kernel does ) . Then whenever the cpu scales to 998mhz on the phone, the power supplied will be 1275mV instead of 1300mV. So basically each frequency is guaranteed to always draw less power than normal ( In this case the CPU will pull 35 LESS mV every time the phone's CPU hits 998mhz ) .
So in Static Undervolting kernel, the frequency of 245mhz has a voltage setting of 925mV assigned to it. So whenever the CPU is at 245mhz, it will be getting 925mV at all times. Regardless of the process at hand. ( Again these numbers used above are for Netarchy's Kernel. It will vary from DEV to DEV and kernel to kernel. )
SBC=Superior Battery Charging
Possible issues here with the SBC charging. I would sway away from these style kernels ( http://forum.xda-developers.com/showthread.php?t=904577 )
SBC is a type of "trickle" charging. It's a full, slow, complete charge and it prevents the 10% drop that most users get when pulling the phone off the charger. This kernel performs best with an overnight charge. Some users asked questions on the safety of the SBC charging method. Ms79723 states that it slowly pushes mV into the battery and thus keeps the battery cool. SBC kernels push the battery past their normal 100% charged point, to a TRUE 100% charged battery. These kernels also charge extended batteries to their maximum and show true "on charger" voltages, which would deem these to be more accurate for checking voltages on your battery. There was and still are concerns of the SBC kernels destroying your battery, but to most people now these don't pose much concern anymore.
The issues people were bring up is that the Li-Ion batteries are charged to the point HTC set them to was for safety of the battery. Li-Ion's can be unstable at times, but Ms79723 programmed safety temperature and voltage "stops" to kill the charging is they get too high. Bad things can start to form, I said can not will, if the temperature gets above 140f and voltage gets to or past 4230mV. If the mV gets to 4230mV it can causes issues. If it gets to 4300 mV it can cause plating. People are also speculating that the SBC kernels are going to kill your battery and or shorten the life. With the price of eBay batteries now days, if the SBC kernels give you drastically ( which has been seen ) more battery life, then why not? The highest seem on the SBC kernels is 4210mV, which is under both values for issues to start.
Smartass Governor
I at first thought the Smartass Governor learned from what you do. But a member ( gpz1100 ) gave me this short to the point description on how they work. The Smartass governor isn't really smarter, nor does it learn from how you use the phone. It's smarter only the sense that it considers more factors to base the cpu speed on. It's more or less a combination of conservative with a screen off profile built in. The way it scales the CPU is not at all affected by any history of usage, rather only by immediate samples taken.
There are other governors that are available as well. Those being conservative, ondemand, powersave, etc. which those are more self explanatory.
Great post.will thank you when I get on the computer.
Sent from my PC36100 using XDA App
Nice Work! Thanked!
Thank you. I have been looking for a laymans term definition for lots of these acronyms. This is a great post. I have bookmarked for myself and others for future reference. Thanks is given!!!!!!
Great post. Thanks much for compiling all this info from various sources.
Questions to satisfy my curiosity --
1. What type of governor (conservative/smartass/etc.) do you prefer or recommend? I seem to have the best luck with smartass. Plus I like saying I have a smartass governor.
2. What kernel or kernels do you use? ms's SBC thread is hot right now. I've tried those out, and while I do like the true 100% charge of SBC, I get quick battery drain once the battery falls from 100%. I'm not sure I get any more battery life that without the trickle charge.
For the last few days I've been using Ziggy's BETA Kernel Evo CFS 19 Dec 10 (2.6.32.27-ck2) with Calkulin's EViO 2 rom. I get the initial 4 or 5% drop right off the charger, then everything calms down and I get GREAT battery life. I don't use SetCPU or anything like that, only OS Monitor to change the governor from conservative to smartass.
Screenshot attached. 25 minutes of voice calls, 25 texts or so, light web browsing (xda), some facebook, 10 or so emails. About 5 hours of this time was on 3G while driving on the highway.
Great write up. I learned a lot. One thing I noticed that you did not have what SBC stands for SBC=superior battery charging
VisedMonk said:
Great post. Thanks much for compiling all this info from various sources.
Questions to satisfy my curiosity --
1. What type of governor (conservative/smartass/etc.) do you prefer or recommend? I seem to have the best luck with smartass. Plus I like saying I have a smartass governor.
2. What kernel or kernels do you use? ms's SBC thread is hot right now. I've tried those out, and while I do like the true 100% charge of SBC, I get quick battery drain once the battery falls from 100%. I'm not sure I get any more battery life that without the trickle charge.
For the last few days I've been using Ziggy's BETA Kernel Evo CFS 19 Dec 10 (2.6.32.27-ck2) with Calkulin's EViO 2 rom. I get the initial 4 or 5% drop right off the charger, then everything calms down and I get GREAT battery life. I don't use SetCPU or anything like that, only OS Monitor to change the governor from conservative to smartass.
Screenshot attached. 25 minutes of voice calls, 25 texts or so, light web browsing (xda), some facebook, 10 or so emails. About 5 hours of this time was on 3G while driving on the highway.
Click to expand...
Click to collapse
I so far used conservative. I'm mainly using text and web. So a CFS kernel is where it's at for me. I never see the use on stuff like SetCPU when using specific kernels, because the kernels determine what and how to set the cpu's speed etc.
On the screen shots, I'm sill learning on whats what. But it seems good.
On the SBC kernels, I'm new to this stuff. So I myself am messing with them, trying to find what works best for me.
roscoenr said:
Great write up. I learned a lot. One thing I noticed that you did not have what SBC stands for SBC=superior battery charging
Click to expand...
Click to collapse
Thanks man. And yeah I did forget that, huh lol. Thanks.
Just a few comments/corrections for ya ;D
mroneeyedboh said:
Here is some information regarding kernels that I've collected from people off of this forum and the internet. This work is not mine, I just reworded it to make it fit. I thought I'd compile it for future users that have questions.
** There are two main styles of kernels, those being CFS and BFS.
CFS = Completely Fair Scheduler
CFS kernels tend to focus on the system as a whole. CFS's are efficient for lighter or standard tasks, think texting and web browsing here. The stock kernels that we run from HTC are CFS kernels. The CFS kernels typically give you the best battery life as well.
Here is more information on CFS: http://en.wikipedia.org/wiki/Completely_Fair_Scheduler
BFS= Brain **** Scheduler
BFS kernels tend to focus on whatever app is running in the foreground, think a 3d gaming here. So a BFS kernel may give you better Quadrant scores, which shouldn't be the end all for someone choosing a kernel. These kernels can tend to be laggy at times too.
Here is more information on BFS : http://en.wikipedia.org/wiki/Brain_Fuck_Scheduler
Click to expand...
Click to collapse
Mostly correct, though it's worth pointing out that while CFS does attempt to be more fair with respect to all running processes, the mainline kernel devs have implemented some ideas that originated with BFS into CFS.
CFS is the default in the mainline linux kernel, BFS is a 3rd party scheduler that must be patched in.
mroneeyedboh said:
** Then there are sub-styles of these CFS and BFS kernels. Those being No-HAVS, HAVS, Static Undervolting, SBC and smartass governors.
Click to expand...
Click to collapse
Variations tend to focus more on HAVS/No-HAVS, a number are incorporating SBC, and many, while they may include the smartass governor, also often include other governors as well, such as conservative, ondemand, powersave, etc.
mroneeyedboh said:
HAVS = Hybrid Adaptive Voltage Scaling
Non-HAVS = Non Hybrid Adaptive Voltage Scaling
HAVS built kernels, both less aggressive and more aggressive builds, are based on the idea by allowing a range of variable voltage levels at each speed setting. Which basically means the amount of current the system draws from the battery fluctuates according to what it needs ( based off of the process at hand ). These levels are based on the load of the CPU and battery temperature. The theory is that if the load isn't significant enough, it may be possible to lower the voltage more than the static setting, and in terms saving that much more battery. But also it can raise it higher than the static setting if it sees fit.
For an example in a More Aggressive HAVS kernel the speed of 245mhz has a range of voltage values that can be used. The ranges are from 900-950mV. So if the load is low enough, instead of sending 925mV to the CPU only 900mV will be sent ( saving battery ). Now if the load is big enough to call for more juice than 925mV (which is the static setting), the HAVS ( inside of the kernel ) can send up to 950mV to the CPU at that 245mhz speed. The voltage of 950mV is the max HAVS can send at a 245mhz speed.
Click to expand...
Click to collapse
NoHAVS/Non-HAVS = Static Voltage Scaling ;D Just sayin'
Caveat: The mV ranges quoted here are only guaranteed accurate/valid in reference to my kernel builds using the HAVS-more voltage table.
Other HAVS implementations might have a greater range of possible voltage values for any given speed, or a lesser range. The main concept to convey with regard to HAVS is that it dynamically scales the voltage supplied to the cpu at any given speed, erring on the side of lowest power draw, in an effort to enhance power saving.
mroneeyedboh said:
No-HAVS built kernels use Static voltage scaling and do not use undervolting. These will not alter the amount of current at one set CPU speed. So no matter what process is being ran, it's still going to provide that dead set amount of current to the CPU.Thus burning battery life for smaller tasks, as it would use the same amount of battery for heavier tasks.
Not all EVOs can run a HAVS built kernel. Most should try out the More Aggressive HAVS kernels, and if your phone acts funny ( Force closing, Camera issues, if it doesn't reboot etc ) then you should try the Less Aggressive HAVS kernels. And if still you're in the same boat, then last resort is to use a Non-HAVS kernel. Then you can run something like SetCPU to help out to throttle down the CPU at times.
Click to expand...
Click to collapse
Pretty accurate here.
mroneeyedboh said:
Static Undervolting
Remember how I said that HAVS can fluctuate how much power it draws based on CPU load and battery temperature? Static Undervolting is when each frequency uses less mV then it normally would call for, but those numbers are set in stone. They will not fluctuate like HAVS would to save battery life. So say normally the frequency of 998 MHz would use 100%. Once you flash a Static Undervolting kernel, that specific frequency would run at 90% ( versus the normal 100% ) at all times. So basically each frequency is guaranteed to always draw less power than normal ( i.e. 10% less than normal ) .
So in Static Undervolting kernel, the frequency of 245mhz has a voltage setting of 925mV assigned to it. So whenever the cpu is at 245mhz, it will be getting 925mV at all times. Regardless of the process at hand.
Click to expand...
Click to collapse
This is potentially worded in a confusing manner using %'s. HAVS dynamically sets the amount of power supplied to the cpu at any given speed based on factors like load and battery temperature.
When not using HAVS, Static voltage scaling is used. Static undervolting is simply setting these static voltage values at a lower level than the stock default.
For example: The stock default voltage for the 998mhz setting is 1300mV.
If the static voltage table is altered so that the setting for 998mhz is 1275mV, then whenever the cpu scales to 998mhz on the phone, the power supplied will be 1275mV instead of 1300mV.
It's also worth noting that the static undervolting example you've used at 245mhz is only guaranteed valid as an example referencing one of my static undervolting kernel builds. Another kernel builder might well alter the table in their particular kernel to set the values higher or lower (in other words, it's worth pointing out that it's an example, and not a given truth for all kernels ;D).
Thanks for the clarifications. Maybe we can get this stickied?
How do we find the voltage tables for the different kernels? i'm curious to see how they all compare with each other.
Just thanx
Didn't see a thanx button, but thanx anyway. We noobs love people like you who explain what noobs don't know in a way noobs can understand. Don't change your writing style.
The Old Black Guy
mroneeyedboh said:
Here is some information regarding kernels that I've collected from people off of this forum and the internet. This work is not mine, I just reworded it to make it fit. I thought I'd compile it for future users that have questions.
** There are two main styles of kernels, those being CFS and BFS.
CFS = Completely Fair Scheduler
CFS kernels tend to focus on the system as a whole, and CFS is the default in the mainline linux kernel. CFS's are efficient for lighter or standard tasks, think texting and web browsing here. The stock kernels that we run from HTC are CFS kernels. The CFS kernels typically give you the best battery life as well. Though it's worth pointing out that while CFS does attempt to be more fair with respect to all running processes, the mainline kernel devs have implemented some ideas that originated with BFS into CFS.
Here is more information on CFS: http://en.wikipedia.org/wiki/Completely_Fair_Scheduler
BFS= Brain **** Scheduler
BFS kernels tend to focus on whatever app is running in the foreground, think a 3d gaming here. So a BFS kernel may give you better Quadrant scores, which shouldn't be the end all for someone choosing a kernel. The BFS is a 3rd party scheduler that the dev's have to patch into a CFS kernel ( which in turn makes it into a BFS kernel ) . These kernels can tend to be laggy at times too.
Here is more information on BFS : http://en.wikipedia.org/wiki/Brain_Fuck_Scheduler
** Then there are sub-styles of these CFS and BFS kernels. Those being No-HAVS, HAVS, Static Undervolting, SBC and smartass governors.
HAVS = Hybrid Adaptive Voltage Scaling
Non-HAVS = Non Hybrid Adaptive Voltage Scaling AKA Static Voltage Scaling
HAVS built kernels, both less aggressive and more aggressive builds, are based on the idea by allowing a range of variable voltage levels at each speed setting. Which basically means the amount of current the system draws from the battery fluctuates according to what it needs ( based off of the process at hand ). HAVS dynamically scales the voltage supplied to the CPU at any given speed, erring on the side of lowest power draw, in an effort to enhance power saving. The theory is that if the load isn't significant enough, it may be possible to lower the voltage more than the static setting, and in terms saving that much more battery. But also it can raise it higher than the static setting if it sees fit.
For an example in a More Aggressive HAVS kernel the speed of 245mhz has a range of voltage values that can be used. The ranges are from 900-950mV. So if the load is low enough, instead of sending 925mV to the CPU only 900mV will be sent ( saving battery ). Now if the load is big enough to call for more juice than 925mV (which is the static setting), the HAVS ( inside of the kernel ) can send up to 950mV to the CPU at that 245mhz speed. The voltage of 950mV is the max HAVS can send at a 245mhz speed. ( Keep in mind these voltages are not the same for all forms of HAVS, so the voltages will vary between devs and which kernel your looking into. This was just an example from Netarchy's More HAVS table )
No-HAVS built kernels use Static voltage scaling and do not use undervolting. These will not alter the amount of current at one set CPU speed. So no matter what process is being ran, it's still going to provide that dead set amount of current to the CPU.Thus burning battery life for smaller tasks, as it would use the same amount of battery for heavier tasks.
Not all EVOs can run a HAVS built kernel. Most should try out the More Aggressive HAVS kernels, and if your phone acts funny ( Force closing, Camera issues, if it doesn't reboot etc ) then you should try the Less Aggressive HAVS kernels. And if still you're in the same boat, then last resort is to use a Non-HAVS kernel. Then you can run something like SetCPU to help out to throttle down the CPU at times.
Static Undervolting
Remember how I said that HAVS can fluctuate how much power it draws based on CPU load and battery temperature? Well when the kernel is not using HAVS, it is going to use Static Undervolting. Static Undervolting is when each frequency uses less mV then it normally would call for, but those numbers are set in stone. They will not fluctuate like HAVS would to save battery life. For example, the stock default voltage for the 998mhz setting is 1300mV.If the static voltage table is altered so that the setting for 998mhz is 1275mV ( this is what a Statis Undervolting kernel does ) . Then whenever the cpu scales to 998mhz on the phone, the power supplied will be 1275mV instead of 1300mV. So basically each frequency is guaranteed to always draw less power than normal ( In this case the CPU will pull 35 LESS mV every time the phone's CPU hits 998mhz ) .
So in Static Undervolting kernel, the frequency of 245mhz has a voltage setting of 925mV assigned to it. So whenever the cpu is at 245mhz, it will be getting 925mV at all times. Regardless of the process at hand. ( Again these numbers used above are for Netarchy's Kernel. It will vary from dev to dev and kernel to kernel. )
SBC=Superior Battery Charging
SBC is a type of "trickle" charging. It's a full, slow, complete charge and it prevents the 10% drop that most users get when pulling the phone off the charger. This kernel performs best with an overnight charge. Some users asked questions on the safety of the SBC charging method. Ms79723 states that it slowly pushes mV into the battery and thus keeps the battery cool. SBC kernels push the battery past their normal 100% charged point, to a TRUE 100% charged battery. These kernels also charge extended batteries to their maximum and show true "on charger" voltages, which would deem these to be more accurate for checking voltages on your battery. There was and still are concerns of the SBC kernels destroying your battery, but to most people now these dont pose much concern anymore.
The issues people were bring up is that the Li-Ion batteries are charged to the point HTC set them to was for safety of the battery. Li-Ion's can be unstable at times, but Ms79723 programmed safety temperature and voltage "stops" to kill the charging is they get too high. Bad things can start to form, I said can not will, if the temperature gets above 140f and voltage gets to or past 4230mV. If the mV gets to 4230mV it can causes issues. If it gets to 4300 mV it can cause plating. People are also speculating that the SBC kernels are going to kill your battery and or shorten the life. With the price of eBay batteries now days, if the SBC kernels give you drastically ( which has been seen ) more battery life, then why not? The highest seem on the SBC kernels is 4210mV, which is under both values for issues to start.
Smartass Governor
This is an integrated process that basically does something like SetCPU does but smarter. What Smartass does is it learns from how you use the system ( the system being your phone ). So SetCPU has its "profiles" to determine how it will set the CPU ( for lack of better terms ), smartass will automatically distribute power as needed. And again this is determined by how you use the phone. Its more of an Intelligent SetCPU. This process is not in every kernel, so if you are interested look for it in the features.
There are other governors that are available as well. Those being conservative, ondemand, powersave, etc. which those are more self explanatory.
If anything needs to be added or altered PM me and I'll edit the post. If it helps, dont forgot to click the thanks button in the bottom right, instead of posting thanks.
Click to expand...
Click to collapse
flooberz said:
How do we find the voltage tables for the different kernels? i'm curious to see how they all compare with each other.
Click to expand...
Click to collapse
Truthfully the voltages are dependent to the devs. Like I said it varies, so you would have to contact the devs and see how they set theirs up.
Dsims6465 said:
Didn't see a thanx button, but thanx anyway. We noobs love people like you who explain what noobs don't know in a way noobs can understand. Don't change your writing style.
The Old Black Guy
Click to expand...
Click to collapse
No problem man. BTW nice sign off name haha. The thanks button is on the bottom right of the first post. Its a rectangle button, but none the less no problem.
THANK YOU!! This guide is very well written and makes perfect sense to us who want to know more about what these kernels do.
Thanks again!!
emeraldayotte said:
THANK YOU!! This guide is very well written and makes perfect sense to us who want to know more about what these kernels do.
Thanks again!!
Click to expand...
Click to collapse
No problem man. Just spread the word. I tired to get it stickied but got no response. lol Ohwell.
You should also mention the difference between Sense and AOSP kernels. That's a pretty big one to leave out. Someone just posted this morning about flashing a Sense kernel with MIUI and rendering their phone pretty much useless.
ok thanks. As soon as I get more info on them I will post it up.
Nice job man
Product F(RED) said:
Nice job man
Click to expand...
Click to collapse
Thank YOU!
Is Bump Charging the same as the Smartass Governor?
shaun0207,
In a word, no. They control two different things. One control charging method, other controls process prioritizing.
Related
If the point of HAVS if to regulate voltage, etc. Wouldn't using SetCPU, well profiles in SetCPU, work with HAVS? Example:
I have a profile set to minimize frequencies from 128-245 mhz when screen is off. If HAVS worked with these frequencies to lower voltage, wouldn't keeping the frequency threshold between those two numbers keep HAVS maintaining a lower voltage?
I see a lot of people saying not to use SetCPU profiles with kernels that include HAVS, but never really explanation why.
Also, If one would decide to only use a profile while the phone was charging, that would have no effect on HAVS when the phone is unplugged, correct? I want to be able to switch the CPU governor to ondemand while the phone is charging so I can get the maximum performance, but when it's not charging to just go back to the kernel default, which is conservative. If using profiles negatively effects the performance of HAVS, can I just use a charging profile without negatively effecting HAVS?
Explanations people!
Snap 7.6 (which has nHAVS) works fine with SetCPU, and you're encouraged to use SetCPU. I don't know where you're seeing this "Don't use SetCPU!" stuff, but it's probably just people who are trying to prevent a deluge of complaints about their phones acting wonky.
Use SetCPU. The worst that can happen... Is your phone acts wonky/poor battery life. Make sure to NOT check the "Set at boot" options in SetCPU while you're testing!
drmacinyasha said:
Snap 7.6 (which has nHAVS) works fine with SetCPU, and you're encouraged to use SetCPU. I don't know where you're seeing this "Don't use SetCPU!" stuff, but it's probably just people who are trying to prevent a deluge of complaints about their phones acting wonky.
Use SetCPU. The worst that can happen... Is your phone acts wonky/poor battery life. Make sure to NOT check the "Set at boot" options in SetCPU while you're testing!
Click to expand...
Click to collapse
Figured as much. Thanks!
Ya know, I never understood why people were saying not to use SetCPU with HAVS kernels either especially since, like, for example, Calkulin highly recommends SetCPU for use with his ROM and that comes packed with Kings #10 nowadays. I figure if Calk (or any other reputable ROM/kernel dev) says to do it he's probably saying it for your benefit. Now, on to find a real reason as to why or why not
I think that what is meant is that you don't have to use SetCPU because HAVS already reduces voltage to the processor when it isn't being used. Using SetCPU profiles won't mess anything up, but it is redundant to do so if the HAVS kernel is already controlling the amount of juice that goes into the processor at any given time.
Please note this is a hypothesis. I am not an expert by any means. If someone knows any better, please clarify, because I have been curious about this, too.
rugedraw said:
I think that what is meant is that you don't have to use SetCPU because HAVS already reduces voltage to the processor when it isn't being used. Using SetCPU profiles won't mess anything up, but it is redundant to do so if the HAVS kernel is already controlling the amount of juice that goes into the processor at any given time.
Please note this is a hypothesis. I am not an expert by any means. If someone knows any better, please clarify, because I have been curious about this, too.
Click to expand...
Click to collapse
It makes sense, but isn't HAVS only a voltage regulator? Using SetCPU to lower frequencies should theoretically compliment HAVS especially with screen off profiles as to keep the voltage low with HAVS, and frequencies low with SetCPU. I know that Android/CPUs clock down when idle or when the screen is off, but their maximum frequencies aren't lowered as well are they? Using SetCPU to set a maximum frequency that's low should be even better. That's my take anyway.
Here is a comparison someone did with SetCPU and various kernels and went so far as to say they've read several places that using SetCPU in conjunction with 'newer' kernels may be counterproductive, since the inclusion of HAVS. However, I haven't been able to find that many posts to backup this claim. That or I just suck at searching. lol
http://androidforums.com/evo-4g-all-things-root/179761-kernels-setcpu-battery-comparison.html
I'll run a test
hayabusa1300cc said:
i use the dc compaitble one and i love it the best
there is one i want to try today, its
netarchy-toastmod-5.0-cfs-havs-preview-universal-signed
Click to expand...
Click to collapse
Okay. Been running the Netarchy CFS HAVS 4.1.9.1 universal kernal in conjunction with set cpu and using Virus Anthrax v4.....battery life is bad so far. I don't know how it could be better on anyone else's phone either. I have set CPU set to minimal settings (profiles) and conservative. My up time (display)has been around an 45 min total. One call and a couple of MMS sent. My power manager settings keep the screen set to 80 on battery power. Total time 7 hours with 32 percent remaining.
Wifi, 4G, GPS, and push are TURNED OFF. Nothing that drains battery above normal system apps, is running.
This is not a good Kernal UNLESS........its because I just started using it this morning with my first run through of the battery being fully charged and the stats reset at the time of full charge.
So the question is:
How long should we run a kernal after:
1. Installing it
2. Starting with fresh 100% battery charge
3. Wiping battery stats.
Does it need one drain and one full charge before you throw the kernal to the dogs?
Should set CPU be disabled / uninstalled after HAVS kernals are flashed? I think I remember reading somewhere that you should not use set CPU with HAVS kernals. It doesnt make sense to me as set CPU sets the clock frequency and HAVS is for voltage scaling?
Im going to try and recharge the phone tonight after full run down and disable the set on boot setting for set CPU.
Anyone have any answer on this?
-JZ
Well my understanding is that havs and setcpu do the same thing sorta, depending on how you set your profiles up. Because havs underclocks while the screen is off, which can be done with setcpu, and if you set setcpu to conservative then you might be getting the same affect you would get from havs. Having them both run is like overkill, your phone would be doing double the work for the same results.
Battery still gonna be a pain while the screen is on so it's not like both of these will drastically increase battery life while in use. It'll just manage the battery alot better while the phone is idle.
ms79723 said:
Well my understanding is that havs and setcpu do the same thing sorta, depending on how you set your profiles up. Because havs underclocks while the screen is off, which can be done with setcpu, and if you set setcpu to conservative then you might be getting the same affect you would get from havs. Having them both run is like overkill, your phone would be doing double the work for the same results.
Battery still gonna be a pain while the screen is on so it's not like both of these will drastically increase battery life while in use. It'll just manage the battery alot better while the phone is idle.
Click to expand...
Click to collapse
Hmm.. I should probably do some more reading on HAVS, because if it is responsible for regulating clock frequencies as well, then it would be counterproductive. HOWEVER, if HAVS does indeed regulate clock frequencies, the question would be what is the minimum/maximum frequency that our current HAVS kernel allows when the phone is asleep or idle? Because on my SetCPU profile, it is 128/245MHz for screen off.
freeza said:
Hmm.. I should probably do some more reading on HAVS, because if it is responsible for regulating clock frequencies as well, then it would be counterproductive. HOWEVER, if HAVS does indeed regulate clock frequencies, the question would be what is the minimum/maximum frequency that our current HAVS kernel allows when the phone is asleep or idle? Because on my SetCPU profile, it is 128/245MHz for screen off.
Click to expand...
Click to collapse
I don't set my set cpu that low because, again......I read this somewhere....., set CPU with frequencies below 384 will disable the WIFI. Sounds wacky.....I know...if there is any truth to this let me know. I guess I could check to see if the WIFI enables after the screen off.....eg....its looking for the ip....
Great idea on a thread OP. Its obvious we need a place to gather some real information from reliable sourses on:
1. SET CPU and its use with newer Kernals / Kernals with HAVS in them
2. Are the newer kernals so evolved that set CPU is no longer needed. (I'd love that as Im a bit tired of setting my profiles every time I flash a ROM)
jasonziter said:
I don't set my set cpu that low because, again......I read this somewhere....., set CPU with frequencies below 384 will disable the WIFI. Sounds wacky.....I know...if there is any truth to this let me know. I guess I could check to see if the WIFI enables after the screen off.....eg....its looking for the ip....
Great idea on a thread OP. Its obvious we need a place to gather some real information from reliable sourses on:
1. SET CPU and its use with newer Kernals / Kernals with HAVS in them
2. Are the newer kernals so evolved that set CPU is no longer needed. (I'd love that as Im a bit tired of setting my profiles every time I flash a ROM)
Click to expand...
Click to collapse
I have my WiFi turned on and connected to my home network all the time and have never noticed it shutting itself off or disconnecting with my frequencies that low
I don't think SetCPU will ever be obsolete unless devs compile a kernel that can automatically do the following:
-set max frequency to higher than default. (but probably wont for max compatibility reasons, since no evos are made equal and that said frequency is guaranteed to work with all evos.)
-set minimum frequency to the lowest possible without adverse reaction.
-dynamically change governor based on either charge state/load state/or remaining battery life.
-dynamically change max/min clock frequencies based on either charge state/or remaining battery life.
SetCPU will probably always be in my bag of must haves, BUT if there is proof that using profiles negatively effects HAVS, I will just remove the screen off profile. With netarchy's 4.1.9.1cfs kernel, conservative governor is the default, and SetCPU allows me to change governor to ondemand with a profile of charging/full. This is perfect.
Speaking of HAVS and SetCPU, a snippet from the common misconceptions thread:
If using a kernel with HAVS, you do not need SetCPU to under clock. That is exactly what HAVS does, lowers voltages when your phone is idling. You are defeating the purpose by using SetCPU. This is why Kingklick himself tells everyone not to use SetCPU with his kernels.
Click to expand...
Click to collapse
http://forum.xda-developers.com/showthread.php?t=790427
There's quite a bit of information in the Ultimate Kernel Review here ...
http://forum.xda-developers.com/showthread.php?t=790559
In a recent post, the author (skydeaner), posts his own personal settings which include Kings #9 (havs) and SetCPU ...
http://forum.xda-developers.com/showpost.php?p=8465730&postcount=104
Nice post man. Finally... some real info to use. I think I'm going to airborne virus with kk9.
Sent from my PC36100 using XDA App
One King hasn't said to NOT use SetCPU, he said that setting profiles in it might interfere with his kernels sometimes and cause a slight conflict. You still have to use setcpu for overclocking your phone.
Also this snipit is from the other well known Dev in his Rom thread.
Calkulin said:
I think some people have forgotten what HAVS/AVS actually do. They voltage scale based on CPU speed, so SetCPU shouldn't interfere with HAVS/AVS since it can only control CPU speed/governor not voltage.
Now if SetCPU gets updated and starts controlling voltage then we'll see issues with HAVS/AVS kernels
Click to expand...
Click to collapse
palmdude said:
Calc thanks! But for simple people like us could clarify what it is better in terms of battery life, setcpu installed or uninstalled (on king#10)?
This is what we were guessing/debating
Click to expand...
Click to collapse
Caulkin said:
Installed since it gives you better control over which governor to use and the parameters for that governor. Plus let's not forget the benefit of profiles which if done right, will improve performance & battery life.
But on a side note, here's what I've noticed for the 2 main kernels here on my phone
King's kernel is better on battery life but Netarchy's kernel has a better overall smoothness feel
Click to expand...
Click to collapse
sgt. slaughter said:
One King hasn't said to NOT use SetCPU, he said that setting profiles in it might interfere with his kernels sometimes and cause a slight conflict. You still have to use setcpu for overclocking your phone.
Also this snipit is from the other well known Dev in his Rom thread.
Click to expand...
Click to collapse
+1 on all of those points.
I just got my Evo not too long ago, so I am still trying to figure out all of the SetCPU/HAVS/OC/UV nonsense to try and optimize my battery.
I am trying to translate all of the information this thread provides (plus all linked threads and relevant searches) in to stupid (the only language I understand)
HAVS and SetCPU can be used together (in theory) because
HAVS only effects voltage
SetCPU only effects processor speed
Anecdotally HAVS is a little wonkier than a non-HAVS kernel (from a benchmarking perspective)
Anecdotally HAVS and SetCPU have not returned the expected increase in battery life (possibly due to redundancy)
All should be taken with a grain of salt as each evo is a little different
In theory, Kings or Netarchy + SetCPU should equal great battery life when on standby (and depending on OC options should help when in use as well)
---
Is that an adequate translation to stupid?
Psichi said:
I just got my Evo not too long ago, so I am still trying to figure out all of the SetCPU/HAVS/OC/UV nonsense to try and optimize my battery.
I am trying to translate all of the information this thread provides (plus all linked threads and relevant searches) in to stupid (the only language I understand)
HAVS and SetCPU can be used together (in theory) because
HAVS only effects voltage
SetCPU only effects processor speed
Anecdotally HAVS is a little wonkier than a non-HAVS kernel (from a benchmarking perspective)
Anecdotally HAVS and SetCPU have not returned the expected increase in battery life (possibly due to redundancy)
All should be taken with a grain of salt as each evo is a little different
In theory, Kings or Netarchy + SetCPU should equal great battery life when on standby (and depending on OC options should help when in use as well)
---
Is that an adequate translation to stupid?
Click to expand...
Click to collapse
Well without the kernels, setcpu can help a lot when on standby. But Havs is now being focused on when the screen is on, and undervolting to help save battery while you are currently using your phone. Check out Netarchy's universal kernels, the more aggressive undervolting ones and then go to one of king's kernels and you'll see a huge difference between battery drain while the phone is on from the kernels. The more aggressive undervolting kernels hold on to that battery like there's no tomorrow.
I'm running calks rom, and i have setcpu with his profile settings, i just flashed the the newer kernel in the development section for superior battery charging and it has the "smartass" scaling as an option?
Which scaling governor works best? with battery and performance both in mind
"smartass" or "on-demand"
A lot of people say that interactive is really good. my phone doesn't like to play nice with it. I use performance with screen on, battery life isn't a huge factor for me. I set mine to the lowest possible with screen off. I have also heard a lot of good things about smartass, but I have never used it. I would play around with smartass and interactive and see which one works best for you
Swyped from my dark and cyanogenized EVO
I have mine all set to Smartass.
If you select a governer leave setcpu turned on and let your phone idle with the screen on and watch it.
You don't want you CPU maxing out when it's not in use.
I find smartass to keep it at the lowest clock (245 for me) better than any other governers.
Probably should add, i'm getting 20+ hours off a charge with pretty heavy use. but that's with profiles scaling my cpu down as my battery dies, all set to smartass.
With an evo and fresh 3.5.1, n4.3.1 kernal havs, bfs, sbc, the phone has been running very stable @ 1190 but the smartass setting doesnt seem to be playing too well w my phone after many benches w basic setcpu program "long bench" I have determined my phone runs optimal at conservative and performance. Battery isnt terrible on performance as if I stayed by a router for 60% of a full seidio 3500 would be 48-55 hours. This has been best combo for me for speed and life that I have found. no reboots or basic lockups occasionally for an extended time. Maybe its the way smartass looks for what to do by scaling when performance is all way looking for next task that would help it work. But thats my phone, my old droid reponded very dif to kernal swaps as I flashed many too. Battery life off the wifi more has netted me in the 40ish hour charge point. Regardlesd has held 2 days morning to evening routine.
i have used the search and not found any solid info
what are the benefits of it if any
I haven't heard of people undervolting their fone, although i haven't looked to much.
This would mean though reducing the power that the CPU gets. I would imagine this increases battery life among other things.
Your right about what it is, but almost every custom rom/ kernel is undervolted in development section.
Sent from my HTC Desire using XDA App
Undervolting means, the CPU (or hardware in the phone) gets lower voltages, thus saving more battery & not loosing performance.
Undervolting is a process which reduces the excess "voltage" given to the CPU using a software. This is widely used as a cooling solution and in my opinion more effective than any other cooling solution available (thermal paste, cooling pad, etc) at NO cost. Undervolting will NOT compromise performance at all. Underclocking and Overclocking (clock speeds) is whats responsible in regards to performance. Benchmarks will also prove that performance remains the same.
Click to expand...
Click to collapse
Not excess voltage but fully, manufacturer guaranteed, stable Core voltage to lower guesswork voltages which may or may not work and may or may not cause data loss/corruption.
------------------------------
- Sent via HTC Desire -
A cpu needs power for every 'clock cycle'. 1Ghz means there are a billion per second. IF you lower the voltage, there is less power used. But if you lower it too much, the cpu wo'nt be able to 'cycle its clock'...
So undervolting doesn't affect performance, since the cpu remains on 1Ghz. It decreases the power used, so you get better battery life.
Every single cpu is different, so HTC has chosen a default voltage that (shoud) work on all phones they sell. But your particular cpu could be able to work at a lower voltage. It's just a matter of trail and error. Decrease the voltage until the cpu stops working, then higher it a bit. That way you've undervolted your cpu so it uses the least power.
koenvbeek said:
A cpu needs power for every 'clock cycle'. 1Ghz means there are a billion per second. IF you lower the voltage, there is less power used. But if you lower it too much, the cpu wo'nt be able to 'cycle its clock'...
So undervolting doesn't affect performance, since the cpu remains on 1Ghz. It decreases the power used, so you get better battery life.
Every single cpu is different, so HTC has chosen a default voltage that (shoud) work on all phones they sell. But your particular cpu could be able to work at a lower voltage. It's just a matter of trail and error. Decrease the voltage until the cpu stops working, then higher it a bit. That way you've undervolted your cpu so it uses the least power.
Click to expand...
Click to collapse
Very sensible answer..Thanks
koenvbeek said:
A cpu needs power for every 'clock cycle'. 1Ghz means there are a billion per second. IF you lower the voltage, there is less power used. But if you lower it too much, the cpu wo'nt be able to 'cycle its clock'...
So undervolting doesn't affect performance, since the cpu remains on 1Ghz. It decreases the power used, so you get better battery life.
Every single cpu is different, so HTC has chosen a default voltage that (shoud) work on all phones they sell. But your particular cpu could be able to work at a lower voltage. It's just a matter of trail and error. Decrease the voltage until the cpu stops working, then higher it a bit. That way you've undervolted your cpu so it uses the least power.
Click to expand...
Click to collapse
How would one go about under volting .i have tried everything suggested to me and nothing really seems to make a difference
Sent from my HTC Desire using XDA App
Most kernels are undervolted and unless you can compile the kernel for yourself you are stuck with the values given by the creator. There are two exceptions for this, HAVS kernels which automaticly chose a voltage depending on temperature and some other stuff and SVS kernels with snq-'s volt selection interface (found in Leedroid and maybe some other kernels/roms).
So what exactly have you tried and what did you expect to see? Because the difference won't be that noticeable.
TheGhost1233 said:
Most kernels are undervolted and unless you can compile the kernel for yourself you are stuck with the values given by the creator. There are two exceptions for this, HAVS kernels which automaticly chose a voltage depending on temperature and some other stuff and SVS kernels with snq-'s volt selection interface (found in Leedroid and maybe some other kernels/roms).
So what exactly have you tried and what did you expect to see? Because the difference won't be that noticeable.
Click to expand...
Click to collapse
I have tried battery calibration, using app watch dog to let me know which apps are using excessive CPU. Putting my brightness down to 10%, making sure not everything is synced, the only thing synced is beautiful widgets every 4 hours. And just about everything else that has been put forward to me. Here's another example I just taken my phone off charge at 100% and wrote this and I'm now at 73 %. And its only taken2 mins to write
Sent from my HTC Desire using XDA App
adz63 said:
I have tried battery calibration, using app watch dog to let me know which apps are using excessive CPU. Putting my brightness down to 10%, making sure not everything is synced, the only thing synced is beautiful widgets every 4 hours. And just about everything else that has been put forward to me. Here's another example I just taken my phone off charge at 100% and wrote this and I'm now at 73 %.
Sent from my HTC Desire using XDA App
Click to expand...
Click to collapse
So in short you havent tried any kernel with undervolting at all!
Well that all has nothing to do with undervolting, but (extra) undervolting will not fix the drain problem you have.
Do you use setCPU cause your sig says you run at 1113MHz, which cause higher consumption. Also did you set your wifi sleep policy to never(setting-wireless and network-wifi settings-press menu-advanced-wifi sleep police).
At the moment I have the havs kernel that comes with oxygen 2.0 rc6. I have posted another topic about is the kendal good for battery life etc and no1 has told that another kendal would make anything better
Sent from my HTC Desire using XDA App
TheGhost1233 said:
Well that all has nothing to do with undervolting, but (extra) undervolting will not fix the drain problem you have.
Do you use setCPU cause your sig says you run at 1113MHz, which cause higher consumption. Also did you set your wifi sleep policy to never(setting-wireless and network-wifi settings-press menu-advanced-wifi sleep police).
Click to expand...
Click to collapse
@TheGhost1233, how exactly does one decide which kernel suits us best..
Eg: I see two undervolted kernels (I think) at 875 and 925 mV. I have no idea how to decide. Trial and error?
Froyo Kernel [email protected] min
Froyo Kernel [email protected] min
@droidzone Yes trial and error. The mentioned voltage is the lowest the cpu will get at 245MHz. Not all devices are stable with 875mV (you will know if your phone freezes up) so then you move up to the 925mV min. Other than the voltage there is no difference between 875mV or 925mV.
With the HAVS kernels it can take a while before you notice the freezes cause the voltage is dynamic, so be careful if you need your phone as a alarm clock.
I am running Chad's 12-23 kernel on a mostly stock ROM, and have been testing between the on demand governor and the smartass governor, trying to determine which would give better battery life. I ran a log over a 1 minute period with the phone on/awake, but idle. I did NOT kill any background processes, and ran both tests back to back so running processes shouldn't have changed.
Over a one minute period, the governors averaged the following:
On demand
264 mhz
20% load
Smartass
371 mhz
14% load.
As a side note, the smartass governor scores slightly, yet consistently higher on quadrant, seems to run a much more stable framerate on the planet-and-moon graphics test.
so which should be better for batter, and why? lower speed, or lower load?
In general, smartass should provide better battery life than ondemand since it doesn't scale upwards as violently.
Sitting idle with the screen on isn't the best condition for comparing different governors. Since the governors affect the speed and level of scaling, you would want to test under conditions that have more dynamic processing needs.
While it doesn't answer all the questions you have, you might find this helpful:
Effects of CPU Frequency and Screen Brightness on Power Consumption
The funny thing is that even the On Demand governor on this kernel seems modified. On the stock kernel, on demand usually idles much higher, 600-700 mhz. So whatever changes Chad has made overall are causing on demand to be more conservative as well.
I don't really know a method to test under more dynamic circumstances. I'm simply observing in System Panel. But the logging feature it has doesn't get super detailed with CPU speed. Only the realtime monitor. About the only "test" I could do was to scroll the app list up and down on the system panel screen. This causes the mhz and load to jump up pretty much immediately to 800+ mhz. I did not see ANY difference in this between the two governors, they both seem to ramp up equally aggressively, and both would jump to about the same mhz.
bast525 said:
I don't really know a method to test under more dynamic circumstances.
Click to expand...
Click to collapse
You could set up scripts that run various commands/processes, with sleep times in-between.
Do you have Tasker? You could set up Tasks that not only would automate various processes, thereby exposing your CPU to dynamic (yet controlled) conditions, but Tasker now has %CPUFREQ which could record the current CPU frequency throughout the test.
There are also the Frequency Stats to the be found in SetCPU, Android System Info, or I'm sure a host of other apps. They show you how long your CPU has spent at any given frequency. The only catch is that I don't know how to reset those stats (as it's not really a function I use).
Since you are concerned with power use, you would also want part of your logging to include mA current being drawn from the battery.
Just brainstorming. There are a lot of ways you could set up more controlled tests.
OK, so digging a little bit, this should be even easier than I thought. The Frequency Stats are contained in /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state
It looks like rebooting can reset them, but I haven't yet figured out a way to reset them without resetting the device. But it doesn't really matter Once you come up with a testing script, you can have it store a copy of time_in_state at the very beginning of the test, and then again at the end of the test. That way, you can simply compare the time_in_state at the end of the test to the one at the beginning to see just the influence of that test.
I'm wondering if anyone's undervolted and to what values.
I'm also wondering waht the deafult values are and if they change per kernel.
Is there a way to disable SetCPUs undervolting settings?
Has anyone improved battery life with profiles? On the Eris this was the only way to get usable battery life.
Or not. I gave up undervolting after I actually compared battery life at stock values vs undervolted (on my old phone, sgs4g) and discovered it does nothing for battery life.
Edit: undervolting "might" marginally increase standby battery life, but considering how good this phone already does... it certainly won't increase actual screen on usage.
Sent from my Galaxy Nexus using xda premium
Depends how low you under volt. Got more battery life, maybe about an hour, after finding optimal battery life on my gfs Gnex.
If you don't under volt correctly, of course it won't improve battery life.
From my sexy white, Nocturnaled HTC One X
If you're not overly comfortable with undervolting, then using one of the many kernels with Smart Reflex will do a mild undervolt for you. If you are comfortable, then the only way to find numbers good for your phone is to try and test. I tweaked mine down to the point that I was occasionally getting hot boots when the screen was off and media was playing. Tweaking the numbers back up added the needed stability. Even little things like kernel or ROM revisions can change what voltage is or isn't stable. Another example is that when I updated my Jellybro CM10 version the other night, along with updating leankernel from 4.1.0exp3 to 4.2.0, I had to increase a few of my voltages to avoid hot boots.
Just for example numbers, here are mine:
Code:
1350MHz -- 1200mV
1200MHz -- 1150mV
920MHz -- 1050mV
700MHz -- 950mV
350MHz -- 825mV
These numbers will vary from device to device and even between ROM/kernel combinations, so don't use them as hard fact.
Thanks. On a phone like this it might not make a huge difference but on the Eris (Where stock battery life could sometimes be 6 hours if you actually used your phone) an undervolted kernel with setcpu could turn those 6 ours into 48.
Thanks Cilraaz, I'll try those voltages out and benchmark a bit to see if they're stable for my system.
Two things I can say for sure:
1. you will have very limit battery gain by undervolting with Gnex, no matter how low you try.
2. undervolting will bring some stable issue if you get too low, like lose signal and reboot.
I am using Kernel Franco GPU 384 Stock rom on my 4.1.1 and did undervolting
Current configuration:
384Mhz
950mv
------------
729Mhz
1050mv
-----------
1036mhz
1125mv
----------
1228mhz
1275mv
-------------
I did not change the frequencies of overclocking, because I'm not using them.
I felt an improvement in battery consumption unless the unit is heating up.
Just curious - what kind of profiles are you using? I have a "Screen off" that's 350min and 700max. I figure that's fast enough f someone calls me.
I've read many times undervolting isn't worth it.
Hungry Man said:
Just curious - what kind of profiles are you using? I have a "Screen off" that's 350min and 700max. I figure that's fast enough f someone calls me.
Click to expand...
Click to collapse
I'm using the following with SetCPU: default (1350MHz-350MHz), charging, CPU temp > 64, and battery < 35%.
If you're using a kernel and governor that support hotplug, then you likely don't want to use a screen off profile. The combination of the two can tend to cause sleep-of-death or hot boots.
I Am Marino said:
I've read many times undervolting isn't worth it.
Click to expand...
Click to collapse
Most people don't want to spend the time to do it right.
I'm actually not used to the new kernels. I haven't messed with my eris in about a year and back them there was "smartass, on demand, performance," and some other one that clocked down instead of up
Can you explain th escreen off profile causing issues? I don't even know what hotplug is lol I've been out of Android for a long time.
Hungry Man said:
Can you explain th escreen off profile causing issues? I don't even know what hotplug is lol I've been out of Android for a long time.
Click to expand...
Click to collapse
Hotplug disables one of the CPU cores when the screen is off. Some governors, like hotplugx, will also attempt to disable a CPU core during periods of low CPU usage. For some reason, this combined with a screen off profile can cause some problems. I assume it's because of the "screen-off-max-freq" that Imoseyon mentions in the quote below.
Personally, I prefer the interactivex governor with leankernel by Imoseyon. From his kernel thread:
With interactiveX V2 (for gnexus), things are a bit different, since gnexus has built-in support for screen-off-max-freq for all its governors. I took the new interactive code in gnexus, added early_suspend support (screen off/on trigger), and then added logic to the code so the governor uses the phone's built-in hotplugging capability to turn off cpu1 when screen is off (and then turn it back on when screen comes back on). Cpu1 goes offline entirely - no idle, no sleep.
Click to expand...
Click to collapse
I think undervolting helps - my phone is running 728 - 1228 using the interactive governor, with voltages of 600 mV, 700 mV, and 800 mV (728 MHz, 1036 MHz, 1228 MHz respectively) and I haven't had any issues so far. I know there are some reports that say undervolting doesn't help much, but those are when people undervolt by like 50 mV, whereas here I'm going like 400 mV under lol. (Yes, smart reflex is off).
Thanks Cilraaz. Good to know.
So turning the screen-off profile could improve things? Honestly, my system does fine at 350mhz with screen off. Turning a core entirely off would probably help though.
If I use hotplugx governor that would disable one core when the screens off, right?
Hungry Man said:
If I use hotplugx governor that would disable one core when the screens off, right?
Click to expand...
Click to collapse
Hotplugx will disable a core when the screen is off or when there is low system load. Depending on your kernel/governor choice, other governors may do it also. On leankernel, for instance, interactivex will disable a core when the screen is off, but not on low system load.
Ok, thank you.
I haven't done any comparisons of before/ after since I undervolted/ underclocked first thing. But I was browsing for hours while listening to music while talking to a friend with GTalk. talked for about 1.5 hours with someone, Left it on overnight (10 hours), woke up, used it to talk (voice to text) to someone via GTalk, and it's 3:25PM right now and I still have a fair amount of battery life left.
I'd heard mixed things about the battery on this so I'm happy.
My voltages:
1650: 1300
1520: 1250
1350: 1175:
1200: 1125
920: 1000
700: 925
350: 900
I stress tested each one without a crash.