Best balance in performance+overheating? - G3 Q&A, Help & Troubleshooting

I am talking about custom tuned governors, I/O settings and even voltages. Currently running CRdroid and i turned on the cpu info overlay, and even with conservative numbers( cpu 60 C) the phone someties becomes unresponsive.
What i experienced that if you use a performance tuned governor, like intelliactve even tho the boost is apparent it reaches a point where its no longer usable because of overheating. My phone goes into 80C+ zone after like 1 minute of using.
I had 95C cpu one day, had to reboot to cool it. Any tips, and setting to share? :fingers-crossed:

Just do the thermal mod. Put a thermal pad on the RAM chip. I recommend a 1mm pad so you dont run into screen fading issues in the future.

Related

Governor test, cpu speed vs. load, achieving better battery?

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.

Undervolting - good idea or not?

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.

Setcpu Profiles

Hey guys, I'm just wondering what settings do you have on your setcpu for the best performance and battery life? I'm totally new to this lol
Sanks
kazemagic said:
Hey guys, I'm just wondering what settings do you have on your setcpu for the best performance and battery life? I'm totally new to this lol
Sanks
Click to expand...
Click to collapse
i i think that ondemand is the best for daily using... i'm using cm10 rom and i have some music problem so i'm using interactive and it's ok. if you don't use games or heavy apps, you can underclock it to 1ghz or even less and put on powersave.. but you have to try and find the best for you
My setup is a little complicated. I use the ondemand governor, then for the profiles I make it use powersave and under 760mhz between 1am and 8:30am which seems to really help during the night. Also set it to use 760mhz max when the screen is off.
When charging or above 40% battery I allow it to run full speed, but only when the screen is on, therefore helping charge times. On charge or above 80% I set the governor to performance.
In call I set the clock to max 1000mhz and conservative to try and allow calls on low-battery to work properly without lag but also without killing the battery.
I have a couple of other options set for very low battery ( < 12% ) too, but those are only to extend the battery if it's dying.
I wouldn't say all this is necessary... but I need my phone to keep working at all times as I use it for receiving business calls.
It's just a matter of playing around really... depends what you use the phone for. For the most part tell it to use lower clock speeds when you don't need them so much (when phone is off, during the night, during call etc) but you will really notice the speed difference if it's underclocked while you use it, so I tend to allow it to use full whack when screen is on, unless the battery is low.
I also set up profiles to make things like Bloons TD4 run in performance mode and min of 1000mhz, to keep them smooth . Drains the battery though!
lol setcpu does a really good job at battery saving. When using ondemand, my phone can last more than 2 days (if it's on standby)
Have you guys tried under-vaulting? What does it rlly do?
kazemagic said:
lol setcpu does a really good job at battery saving. When using ondemand, my phone can last more than 2 days (if it's on standby)
Have you guys tried under-vaulting? What does it rlly do?
Click to expand...
Click to collapse
If you mean decreasing the voltage on the CPU, no I haven't. From my experience in desktop PCs however, if the CPU voltage is too low it can lead to hardware issues and instability.
If something needs a certain amount of power, and you give it less, it will either try and draw more amps which increases heat and can fry components, or won't work properly. You could probably "under-volt" the CPU at the same time as reducing the clock speed however, but your performance will suffer. When the processor is set to be ondemand it underclocks itself when not in use anyway
The biggest battery drain is screen and radios, concentrate on using them less. Underclocking the CPU will make the phone last longer when in use, but usability will suffer and turn your super fast smart phone into a sluggish one. I only make mine stay underclocked when the screen is off, during a call, or on low battery. During general use I let it do its thing .
UV(Under volt) is actually not to bad. Don't ever set those values at boot, else when they are too low, it will cause BOOTLOOPS. It just reduces the amount of power allowed for the cpu to use, thus it won't use more than required. You can't really ask a person for his/her uv values, as no 2 chips are created equal.
People stating that they UC(underclock) their device is not quite right. We don't have much control over our cpu's to be honest. If you run tegra stats whilst using you're phone, you'll see what I mean. It will sometimes(happens quite often) just bump up to higher frequencies to which you UC them. Also as soon as the screen is locked and unlocked the max cpu frequency set by the governor will just return(for example: say stock is 1500mhz, and you set it to 1400mhz, it will return to 1500mhz after an unlock). Ondemand is very very good for battery and performance. But remember you have to tweak those values individually in order to optain the best possible performace for the given task you want. Whether it is for battery or performance.
It's actually also a lot better to just tweak those values as to TRY and uc. Uv will stick, UC not!
Here is a small example as to battery saving and performance values for ondemand governor:
sampling rate:---------60 000 ----- 30 000
up threshold:--------------95 ----- 60
sampling down factor:-------2 ----- 8
powersave bios: ------------3 ----- 0
ignore nice load:------------0 ----- 0
io is busy:------------------0 ----- 0

governor strategy

I've been thinking a lot about governors lately.
I'm thinking now that you want the cpu to ramp up as fast as possible to complete the task as fast as possible and then go back to sleep, i.e. ondemand.
A given task takes a specific number of clock cycles to complete so your clock frequency simply dictates how long until the task completes.
A cpu has static losses, leakage currents and whatnot, that are there regardless of frequency.
So unless your energy per clock cycle goes up with frequency, it seems you'd want to run as fast as possible to minimize static losses.
I also would guess you want the second core to stay off as much as possible.
Any thoughts or opinions?
MrTallboy said:
I've been thinking a lot about governors lately.
I'm thinking now that you want the cpu to ramp up as fast as possible to complete the task as fast as possible and then go back to sleep, i.e. ondemand.
A given task takes a specific number of clock cycles to complete so your clock frequency simply dictates how long until the task completes.
A cpu has static losses, leakage currents and whatnot, that are there regardless of frequency.
So unless your energy per clock cycle goes up with frequency, it seems you'd want to run as fast as possible to minimize static losses.
I also would guess you want the second core to stay off as much as possible.
Any thoughts or opinions?
Click to expand...
Click to collapse
Sounds a lot like ktoonservative.
Aerowinder said:
Sounds a lot like ktoonservative.
Click to expand...
Click to collapse
Yeah, ktoonservative lets you configure pretty much everything. The thing I was struggling with was setting up_threshold and sampling rate. It seems like depending how fast it's evaluating load, processes could build up and force the second core on when it isn't really needed. It seemed like the 2nd core turned on less with a faster sampling rate.
I don't know the down side of sampling too fast.
Pegasusq seems pretty cool in that the 2nd core turns on based on frequency and queue rather than just load. You can pretty much control exactly when the 2nd core comes on.
I'm trying out msm-dcvs right now even though I don't really know what it does and it's apparently not configurable. I'm not on ktoonsez at the moment so I don't have many choices.

[Q] Serious Heating Issue (CM 12.1) (none of the methods worked)

Is there any way to turn the thermal engine off, or partly off?
Ok. I don't want to melt my 1s, but its really annoying, that it doesn't let me decide the cpu freq.
In this state my phone is a piece of ****. So whenever i want to take a photo, or gameing a little bit, its getting hot, and then it takes the cpu freq to 300Mhz and turns off the other 3 cores....
I can't use this phone in the summer, it is alwalys overheated even when i'm just do some light browsig.
I searched topics to this problem, and find some, but neither worked, as i'm using CM 12.1.
At this point i just want to take over the cpu controll. I tried serveral cpu controll app, but none of them was able to lock the cpu freq at max as the device brings it down.
I don't care how hot the device is. This cpu meant to bear 70+ celsius, so 65 celsius shouldn't harm the device.
Please give me some suggestions, i'm lost. I can't use my phone in its full performance
I'm just sad that i thought its solvable.

Categories

Resources