Reduce heat due to high CPU frequency? - General Questions and Answers

Hello, is there a way to reduce the heat due to high CPU frequency? In fact, when I play games such as Real Racing 3, in order to maximize my phone's potential as it has quad core, I usually set my CPU to maximum frequency (1.8GHz). However, l discover that the CPU drops back to 1GHz or lower, after about 10 minutes of gaming. In the beginning, I thought that it was a bug, but consulting someone in this forum, I discovered that the drop is part of the CPU protection feature. I appreciate this kind of safety feature but it will be boring that you can only enjoy a short 10 minutes of gaming before the phone heats up like a kettle. So, here is the question, is there a way in order to reduce the heat due to high CPU frequency? Will undervolting (UV) be recommended? Thanks.

Heat is generated as a byproduct of electical risistance... You'll have to exuse the bad spelling till I fix it...
1. under volting will reduse the electrons that are alowed to flow, thus reduceing the heat genorated, and it will also reduse your devices' performance.
2. A heat sync will reduce heat if the flat part is placed where the processor is. I ripped one out of an old copmuter and set my phone on it when modum tethering when playing online games and it works well. But not so comphotable when actualy using the device as the metal flanges coming off the other side of the heatsink are pokey.
3. A cpu govener change is the most likely solution to your problem of auto throteling and ramping of your devices' cpu friquancy. There are guides and info kicking around that using a google search like this:
cpu govener site:www.xda-developers.com
Will result in helpful reading matierial. I'd sugest looking at a program like rom tool box that will alow you to set up profiles that triger diferent cpu speeds and govenars bassed off of what your device is doing; such as when the screen is on, max frequancy=max, govenar=smartassV2 and; when the screen is off, max frequancy=50% of max, govenar=conservitive.
4. When all else is not good enough and you've gathered some info on how your device handles different govenars; then build your own. From what I've been reading its not so diffacult to tell your device exsactly how to behave in every way.
Hope some of it helps. And if you need some help with finding spisific sorces of info that I've hinted at, say something and I'll add some links when I spell corect this.
Sent from either my SPH-D700 or myTouch3Gs
Debian Kit Install guide for all android devices that I'm writing:
http://forum.xda-developers.com/showthread.php?t=2240397
Or
https://docs.google.com/document/d/1ssVeIhdBuuy8CtpBP1lWgUkG6fR6oHxP20ToYPPw6zI/edit?usp=drive_web

Related

CPU Freq: How do you keep yours?

This is a question I've never seen asked, but it's an important one. What are you phones CPU Freqs? What Govs do they have, and what Profiles do you use?
Rom: PyroIce
Main: 192 Min, 918 Max. OnDemand.
Screen Off: 192 Min, 384 Max. PowerSave.
InCall: 192 Min, 540 Max. Interactive.
Time 11pm-7am: 192Min/Max Powersave.
Sent from my HTC myTouch_4G_Slide using Tapatalk
that's cool, i might start using profiles again. from fiddling around i've noticed the difference between the ondemand and conservative governors- with ondemand, the processor seems to go from min. to all the way to max. and back down to min, and doesn't use the middle frequencies as much, while on conservative, the processor doesn't shoot up to max. as easily and seems to meander thru the middle frequencies a lot more. it makes sense too, because i've noticed that the phone seems snappier with ondemand.
i noticed you're using some of the others... i'll have to check them out as well.
ondemand
Available in most kernels, and the default governor in most kernels. When the CPU load reaches a certain point (see "up threshold" in Advanced Settings), ondemand will rapidly scale the CPU up to meet demand, then gradually scale the CPU down when it isn't needed. - SetCPU website
conservative
Available in some kernels. It is similar to the ondemand governor, but will scale the CPU up more gradually to better fit demand. Conservative provides a less responsive experience than ondemand, but can save battery. - SetCPU website
performance
Available in most kernels. It will keep the CPU running at the "max" set value at all times. This is a bit more efficient than simply setting "max" and "min" to the same value and using ondemand because the system will not waste resources scanning for the CPU load. This governor is recommended for stable benchmarking. - SetCPU website
powersave
Available in some kernels. It will keep the CPU running at the "min" set value at all times. - SetCPU website
userspace
A method for controlling the CPU speed that isn't currently used by SetCPU. For best results, do not use the userspace governor. - SetCPU website
Interactive
The 'interactive' governor has a different approach. Instead of sampling the cpu
at a specified rate, the governor will scale the cpu frequency up when coming
out of idle. When the cpu comes out of idle, a timer is configured to fire
within 1-2 ticks. If the cpu is 100% busy from exiting idle to when the timer
fires then we assume the cpu is underpowered and ramp to MAX speed.
If the cpu was not 100% busy, then the governor evaluates the cpu load over the
last 'min_sample_rate' (default 50000 uS) to determine the cpu speed to ramp down
to
so, I bought set cpu about 3 phones ago, but I never really saw a differnence, can it be used with the stock kernel?
yellowjacket1981 said:
so, I bought set cpu about 3 phones ago, but I never really saw a differnence, can it be used with the stock kernel?
Click to expand...
Click to collapse
Yeah Plus there's a huge difference with the Battery. I you use my CPU Settings, you should gain 3 hours Min on your phone. Also dropping the CPU in call is great, helps for longer calls and less overheating. If your S-Off you should use a custom kernel. UV Kernels are great.
AgentCherryColla said:
Yeah Plus there's a huge difference with the Battery. I you use my CPU Settings, you should gain 3 hours Min on your phone. Also dropping the CPU in call is great, helps for longer calls and less overheating. If your S-Off you should use a custom kernel. UV Kernels are great.
Click to expand...
Click to collapse
I actually just got an uv kernel, I am about to flash it, I will use your settings too, thanks.
yellowjacket1981 said:
I actually just got an uv kernel, I am about to flash it, I will use your settings too, thanks.
Click to expand...
Click to collapse
If you run a Sense 3.6 Rom, boost the CPU to 1Ghz. 918Mhz Lags.
Sent from my HTC myTouch_4G_Slide using Tapatalk
yellowjacket1981 said:
so, I bought set cpu about 3 phones ago, but I never really saw a differnence, can it be used with the stock kernel?
Click to expand...
Click to collapse
Yes.
You cannot use anything the kernel doesn't already serve as an option, though.
SetCPU doesn't create options - it allows you user-level access to the ones already existing.
Normally you have no control over your clock speed but with it you can...say... limit the maximum clock speed to only be two-thirds of the stock speed.
Since it doesn't ramp up all the way, it doesn't drain as much power.
If you are playing games and stuff that needs a lot of resources, then the slower clock speeds cost you battery since it takes more effort to get the same work done. But if you don't do much with your phone, and don't need a lot of high-end CPU ability, why let it run flat out?
You can also set it to be like that only sometimes, and maximize battery savings by telling your device to chill out when it doesn't have to be awesome.
Now, if you get into custom kernels where you or a dev has opened up more options, SetCPU will again give you user level control over them.
Especially once you get into overclocking beyond manufacturer(s) recommendations, not having some end-user level control over the processor like this is irresponsible.
If you think I run a 1.7 or 1.9 or 1.5+anything on the device flat-out balls-to-the-wall all the time, I would ask you if you drive your car with the gas pedal smashed to the floor all the time. (it's a fitting analogy)
No, again, that would be irresponsible abuse of the hardware for no good reason.
If not SetCPU, then there would be something else to use, but SetCPU is a great interface that not only works well but is maintaned within the XDA community by a member here.
I will always go for the XDA community member version of any app first - it's usually a problem solved from a perspective very near the way I am perceiving the issue, supports the community, and is always easier to find help on if necessary.
What's even cooler is SetCPU is given away free by the dev to XDA members.
I did go ahead and buy it anyway to support the dev. It is a fantastic tool at my disposal, and I have come to realize just how much time and energy goes into making this kind of stuff.
Beyond all that, though, there are a ton of crap apps and software out there slapped together by people who don't care or didn't put the right level of effort into their work. When I find something that actually works and works well after sifting through a sea of garbage, if there is a paid version of the app i'll usually buy it not only as a thank you but also to encourage that particular person to keep working. They - unlike many, many others (in my opinion) earned it.
I know i'm drifting off topic a bit, sorry for that - I just really appreciate quality work and SetCPU falls in with that crowd nicely.
Even without a custom kernel providing options beyond stock, there is still a lot of value this app can hold for anyone with root level access to their device.
Blue6IX said:
If you are playing games and stuff that needs a lot of resources, then the slower clock speeds cost you battery since it takes more effort to get the same work done.
Click to expand...
Click to collapse
Is this true? in my mind, I feel like it will take longer/not be as smooth, but wouldn't necessarily be worse for battery than a higher clock speed.
On a one-for-one comparison it leans more towards an even playing field, until you add that it's a dual-core processor and it very heavily skews the results towards less battery at higher clock speeds for complex operations.
Faster CPU speeds process the actions more quickly, and when you have to crunch a lot of numbers real quick like you do for most games the higher clock speed (especially on the dual core we are using) will complete the act with less power used. It is able to keep up with and/or outpace the flow of data being thrown at it.
If you are just using a notepad or browsing some forums maybe...sending a few texts? Then the higher clock speeds show a negative return on battery usage - you don't need it and it's wasteful.
But when the data has to stay buffered because the CPU is taking it's time working with it, not only is there more electricity consumed by keeping the processor alive longer but also the juice spent on keeping the data buffered.
The data computed is the same data computed at any speed (unless you lose data along the way...) but the power spent on completing that operation is not equal - not by a long shot.
On single core older processors where you are talking about a couple hundred megahertz one way or another the equation is much different, significantly diminshed returns on electricity invested, but with higher quality and multi-core processors especially they can cut through the data with significant ease when sufficiently powered.
But this is on processor intensive activities, and gaming is the first thing that comes to mind. For most other use of the device it's worth underclocking it and you will see battery gains.

[Q] What's the best way to find how overclockable your phone is?

It seems like every phone can handle a different clock speed, is there is a tried and true way to find the optimal clock speed for your phone?
No as u say every phone acts on hes own so i dont think there is any software for this ( optimal overclock) but there is software for ocing it easy like setcpu or nstools... you can oc your cpu by raising it, and using it with multitasking and if it doesnt reboot in hour or two of heavy usage then go step higher. When it reboots try with step or two higher voltages and so on until you get highest cpu with moded voltages (not more than 2 steps) stable with no reboots. Ofc i wouldnt recommend this as you are not getting anything special from it and you risk your phone... btw optimal cpu speed is its own stock speed that is just pure logic xd
Though there is no agreed upon definition, to me the optimal cpu speed is not the stock speed, the stock speed is the standard safe speed. When a CPU is manufactured it invariably has defects, the number of defects dictates the speed at which it can run. For example, when they manufacture the i5 and the i7 they probably just take defective i7 chips and turn off two cores and call it an i5. (I don't know if they actually do this with the i5 and i7 but it's been common practice with just about every processor in the past.)
I guess I should use a different term like, maximum safe speed.
Trial and error is the best way to my knowledge, haven't heard of any phone apps adjusting clocks on the fly based on temp, inaccuracies, etc, like on a computer. You can feel the temp of the phone and it'll reboot at the smallest sign of instability, just don't set test profiles to set on boot.
And what you say is correct. Processes with similar imperfections are grouped, tested and sold under a given name with the benchmark being stock frequency and voltages. Common practice and very often you get some chips you can over clock til it expands out of its bracket and others which fail at everything but stock.

my philosophy on overclocking

Seems like some recurring discussion in past threads:
1 - why should we even bother overclocking if we’re not a gamer.
2 - won’t we damage our device with overclocking.
I haven’t seen definitive answers posted anywhere, and I certainly don’t have one.
Maybe in that case (I have no definitive answer), I should probably just keep my mouth shut.
It may be the case, if so let me know.
For whatever reason, I have some strong opinions and I feel it would be useful to share my opinions and the reasons I have formed those opinions.
Take them or leave them or add to them... up to you.
Point out to me if you think I am grossly mistaken.
1 - why should we even bother overclocking if we’re not a gamer.
Click to expand...
Click to collapse
There is constant tradeoff between battery and performance.
Underclocking will help you save battery. How low you want to underclock depends on what you can tolerate.
But what you can tolerate depends on your user experience, which can be dramatically impacted by use of overclocking at other times.
The perfect example for me is a program which is slow to start up. In my case it is Memento database with 1000+ records, takes a long time to read in (I think the program does some sorting every time it opens). That is a minor annoyance. If I were to underclock it will start even slower, I’m going to get impatient and set my speed back up.
But think about this:
1 - Using Tasker you can apply cpu profiles upon application launch and remove them after a predetermined length of time. I can give the program a blast of 1600M-hz when it starts, then set it back where it was after predetermined period (for example 10 seconds).
2 – Setcpu is not quite as flexible as tasker in this regard. With setcpu we can create a profile to occur when we launch the program like Memento, but we just can’t incorproate a time delay into the logic (it will stay on the higher profile as long as the program runs in the foreground).
3 - There may be circumstances where this setcpu behavior is what you want... it will give you faster response whenever the program is in the foreground, and will yield to lower priority profiles whenever the program goes to the backghround.
(I haven’t investigated how to make make Tasker and setcpu play nicely together yet).
So, if you speed up the things that cause noticeable delay for only a short time, or particular applications which seem to run slow then you can probably be more satisfied with your underclock in the other times. In the overall picture, I think the overclock capability can ironically be used as part of a strategy to save battery (unless you just like overclocking just to see things zip accross your desktop and menu’s pop in and out faster than you can blink, I’m starting to get spoiled with that behavior on my phone in its new configuration, partially from overclock..I’m sure others get even better in their configuations..).
2 - won’t we damage our device with overclocking.
Click to expand...
Click to collapse
On this I would say no, as long as you are careful about not running it in conditions that create high temperature. .
(you may have stability problems as you guys know, an entirely different subject).
The physics of the damage are all related to temperature. There are many variables affecting temperature that the designer is unaware of and so he builds in margin for the worst cause unknown future occurence (he has to consider maybe phone will be in desert with 100F ambient, and on the charger, while the user tries some heavy surfing with gps, all at the same time, so he limits cpu to 1200Mhz).
We on the other hand know what are the conditions of our phone and what it’s likely to see and what it’s doing at any given time, and setcpu provides additional ability to monitor and adjust.
Here are example setcpu profiles I came up with to protect myself from damaging temperatures (Zen's kernel A/1600)
Priority 100: If batter temperature > 50C (122F),establish conservative governor 100-400Mhz
Priority 90: If batter temperature > 45C (113F),establish conservative governor 100-800Mhz
Priority 80: If battery temperature > 40C (104F), establish conservative governor 100-1200Mhz (in the event I was overclocking, this profile will stop it when battery temp exceeds 40C, all other profiles that may invoke overclocking are lower priority than 80).
This is just from judgement, knowing that I’m normally < 104F battery temp during light use and don’t want to overclock when I’m outside that normal light use zone. Some further curtailment of cpu max frequency occurs as battery temperature climbs above that. (which I would not have even had the benefit of if I were casual user with no overclocking and no setcpu).
As long as you’re limiting temperature, you should not be worried about damage imo. By the way, of course overclocking is not the only thing to affect temperature: things like phone case (thermal insulation), charging, gps, heavy use etc all have an effect. I'm not quite sure why sometime cpu overclocking gets singled out in a dangerous category all its own without any discussion of other things that affect tempertaure.
In fairness, you may point out that what we monitor is battery temperature and not the same thing as cpu temperature. It’s a good point. Increase in heat generated at the cpu causes more of an increase in temperature at the cpu then it does at the battery. But it's question of how much different. there's a matter of how much. Why do you think it is that Samsung didn’t give us cpu temperature indication? I think because they knew battery temperature is close enough. Even on newer flagship Behemoth Samsung Note, I’ve read you still only get battery temperature, no cpu temperature. If cpu temperature was that much different, they surely would have provided a separate indication of cpu temperature (cpu is after all a much more critical component than replaceable battery).
And why should we expect battery temperature to be representative of cpu temperature on our phone, when the same is not true on a pc? I think I can answer that:
* PC has things all spread out. There is air flowing through. The air picks up heat from each component from heat sinks by convection. The component temperatures are not tightly coupled together.
* Phone (in contrast to pc) has everything compact inside one itsy bitsy case. There is no air flowing through. That means heat transfer inside the phone is not by convection but by conduction. For most effective conduction, all components are attached with high thermal-conductivity path to the phone structure and the exterior surface of the phone. The heat transfer from phone to ambient is primarily convection. So we have effective heat transfer (conduction) among the components of the phone and less- effective heat transfer (from phone to environment). It tends to tell us that there will not be big difference in temperature among phone components. The big temperature difference that occurs is between the phone and the ambient air.
I don't have access to a phone which has both cpu and battery temperature indicators. If someone does, it would be interesting to hear how close those two temperatures follow each other.
===================================================================================
Edited to add: searching other threads suggests there can maybe be a substantial differencebetween cpu temperature and battery temperature. That makes me a little less certain. At least we can use battery temperature as a gross indicator that the cpu isn't seeing excessive extra heat from other non-cpu sources while we're overclocking it. Certainly having profiles in place to limit overclocking when battery temperature is high can only help protect us. But is it a false sense of security which can lead us astray? I dunno. I have already done a stability test at 1600 for quite awhile and there's no damage in sight, so if there is any damage potential, then it is only an accumulation over time. I don't plan on leaving Fmax at 1600 all the time anyway, since it would kill the battery. My planned strategy reserves the 1600 overclock for occasional playing around, and boosts when I need them like like my Memento database. My gut says that approach is just fine. Interested in hearing any other thoughts, experiences, links that may shed light.

[Q] Overclocking: Minimum/Maximum CPU Clocking Settings?

Running: Asus Transformer TF101 (with Tegra 2 chip)
OS: EOS Custom ROM 78 (Jelly Bean) -- And THANKS to 'em!
Short Question: What the heck are those minimum/maximum MHz settings' optimal numbers?
Long Question: My TF101 w/ EOS Nightly #78 has an overclocking feature in it. Very cool. There are not one, but TWO, separate settings for the chip -- a minimum MHz (starting at 200MHz or something) and a maximum MHz (all the way up to 1600MHz). But after I messed some with it (and like a dunce did not write down the original values) I experienced some random reboots, usually after I closed the lid a while and then reopened it.
So, my question's long version (which is actually a number of questions), follows...
* What are the original values of the Tegra 2 chip in one of these babies? I mean, 1000MHz (1Ghz) is probably the maximum default setting, since that's the chip's official rating. But what's the minimum setting supposed to be at?
* Can I do something as crazy as to tell it to run minimum of 1200MHz and maximum of 1600MHz? In fact, I'm trying that right now and it seems to be working.... but I doubt I'll leave it that way even if it does (makes me nervous about messing up the hardware).
* What optimal settings have others tried with this chip in this (TF101) unit.... or even in other Tegra 2 based tablets?
Thanks for reading. Looking forward to comments.
shonkin said:
Running: Asus Transformer TF101 (with Tegra 2 chip)
OS: EOS Custom ROM 78 (Jelly Bean) -- And THANKS to 'em!
Short Question: What the heck are those minimum/maximum MHz settings' optimal numbers?
Long Question: My TF101 w/ EOS Nightly #78 has an overclocking feature in it. Very cool. There are not one, but TWO, separate settings for the chip -- a maximum MHz (starting at 200MHz or something) and a maximum MHz (all the way up to 1600MHz). But after I messed some with it (and like a dunce did not write down the original values) I experienced some random reboots, usually after I closed the lid a while and then reopened it.
So, my question's long version (which is actually a number of questions), follows...
* What are the original values of the Tegra 2 chip in one of these babies? I mean, 1000MHz (1Ghz) is probably the maximum default setting, since that's the chip's official rating. But what's the minimum setting supposed to be at?
* Can I do something as crazy as to tell it to run minimum of 1200MHz and maximum of 1600MHz? In fact, I'm trying that right now and it seems to be working.... but I doubt I'll leave it that way even if it does (makes me nervous about messing up the hardware).
* What optimal settings have others tried with this chip in this (TF101) unit.... or even in other Tegra 2 based tablets?
Thanks for reading. Looking forward to comments.
Click to expand...
Click to collapse
Generally its all up to your specific chip and how much it can handle as all hardware isn't created equal especially Tegra soc's... the stock speed is 1GHz for the TF but could easily run higher... i would only run your min so high if doing benchmarking not everyday use.. it will kill your battery faster, it would tho benefit benchmarking Because it would run at the highest speed and not have a chance to jump to a lower speed... wont do any damage to the chip since it has built in thermal throttling anyways... my suggestion would be setting your min to the lowest and With the max speed start at 1.2GHz with some stability tests, or heavy use at different OC speeds to find your chips sweet spot with both stability, Battery life and performance.. and have fun
DJLamontagneIII said:
Generally its all up to your specific chip and how much it can handle as all hardware isn't created equal especially Tegra soc's... the stock speed is 1GHz for the TF but could easily run higher... i would only run your min so high if doing benchmarking not everyday use.. it will kill your battery faster, it would tho benefit benchmarking Because it would run at the highest speed and not have a chance to jump to a lower speed... wont do any damage to the chip since it has built in thermal throttling anyways... my suggestion would be setting your min to the lowest and With the max speed start at 1.2GHz with some stability tests, or heavy use at different OC speeds to find your chips sweet spot with both stability, Battery life and performance.. and have fun
Click to expand...
Click to collapse
I'm not sure where the "thanks" button is yet here, but will try to figure it out. Wait.... I just did.
Tonight I backed the minimum down to the 800 vicinity (whatever that number is) and left the top number at 1600. My recent test has been to run Angry Bird, which is not the most stable program. It runs just fine at this setting. The battery is draining fast, though.
So you are suggesting that taking it all the way to the basement minimum-wise will still give me fairly stable top end? I keep wondering if there's any relationship at all between the two numbers, if at some point they don't affect one another adversely if too far apart? This idea is based on no knowledge whatever.
So any furhter thoughts welcome.
shonkin said:
I'm not sure where the "thanks" button is yet here, but will try to figure it out. Wait.... I just did.
Tonight I backed the minimum down to the 800 vicinity (whatever that number is) and left the top number at 1600. My recent test has been to run Angry Bird, which is not the most stable program. It runs just fine at this setting. The battery is draining fast, though.
So you are suggesting that taking it all the way to the basement minimum-wise will still give me fairly stable top end? I keep wondering if there's any relationship at all between the two numbers, if at some point they don't affect one another adversely if too far apart? This idea is based on no knowledge whatever.
So any furhter thoughts welcome.
Click to expand...
Click to collapse
It is best to leave the min freq as per default and push only the max freq. Then, you can set application profiles whereby you will allow an oc if you play a specific app(this feature requires an app that is called setcpu). This is to allow you to gain the best battery life(what you did is okay as well, but you'll have less battery life as the proc is running at 800mhz at min)
Otherwise, you can do it manually by setting the governor. For example, when you want to play games, set the governor to performance and oc your proc. When you don't want to play games anymore, then set it back to interactive or ondemand(or any other suggested governor for your device) to allow battery saving
wcypierre said:
It is best to leave the min freq as per default and push only the max freq. Then, you can set application profiles whereby you will allow an oc if you play a specific app(this feature requires an app that is called setcpu). This is to allow you to gain the best battery life(what you did is okay as well, but you'll have less battery life as the proc is running at 800mhz at min)
Otherwise, you can do it manually by setting the governor. For example, when you want to play games, set the governor to performance and oc your proc. When you don't want to play games anymore, then set it back to interactive or ondemand(or any other suggested governor for your device) to allow battery saving
Click to expand...
Click to collapse
I have setcpu but after mucking about with it managed to end up with an unstable system (spontaneous reboots, esp. after closing then opening lid and "waking up" the TF101). Currently I'm just using the EOS Rom's own system settings and having low end all the way to minimum (200 something) and top end at 1500+. The 1600 mhz setting is apparently a problem for this machine (the spontaneous resets again). But at 1500 whatever it seems just fine
One other issue, very important to all of us (harhar), is that Angry Birds seems unstable since I updated to this custom EOS rom. I noted elsewhere that someone said simply turning off wireless would disable ads and stablize the game. I've not tried that yet. Losing angry birds for me would not be a major blow.

Massive lag/performance improvement for rooted Joying (and other Rockchip) HUs

Must be rooted.
Install kernel adiutor.
Start Kernel Adiutor. You'll be met immediately with four graphs showing the load on all four cores.
Select "CPU"
What you will notice by looking at the CPU frequency graphs, is that the head unit spends most of it's time at a low clock frequency, typically 800MHz or so.
Select "governor". The default setting is probably "interactive". This is not a phone. Any governor setting that favors low energy consumption is not appropriate for an automotive head unit. The kernel governor's job is to throttle the clock speed up or down to meet demand. So when the device isn't doing anything, it can run at a lower speed and conserve battery.
Scroll down to and select "performance". This will lock the CPU at 1.6GHz.
Use the "apply on boot" switch to make kernel adiutor start up and apply the setting at every boot.
You will notice dramatically improved responsiveness (immediately) overall.
This should also work with MTCB units or other (non-Joying) units. You must be rooted.
If someone can provide screenshots of the CPU frequency graphs (before/after) I will add them. I am too lazy to run mine in the old state just for getting a picture of before/after, but in a couple of days I will try to add some pictures.
I don't know if the chip will eventually burn up. If it was designed properly, it won't. The Rockchip is used in millions of tablets and other devices, I suspect it is robust by now. It is also advertised on Joying's website as a 1.6GHz quad core, so why is it running at 800 MHz or lower all the time?
There may be a tradeoff, perhaps using ondemand? Would be worth playing around with the other governors and settings to find a way to get max speed only when it is needed. But then again, there may not be any reason to mess with this at all.
This is *not* overclocking and the kernel governor is not a secret. The performance governor will force the processor to run at its maximum advertised speed. I have been running mine this way for >1 week now with no ill effects.
Following these instructions is at your own risk, like almost everything on XDA.
@da_anton
wskelly said:
Must be rooted.
Install kernel adiutor.
Start Kernel Adiutor. You'll be met immediately with four graphs showing the load on all four cores.
Select "CPU"
What you will notice by looking at the CPU frequency graphs, is that the head unit spends most of it's time at a low clock frequency, typically 800MHz or so.
Select "governor". The default setting is probably "interactive". This is not a phone. Any governor setting that favors low energy consumption is not appropriate for an automotive head unit. The kernel governor's job is to throttle the clock speed up or down to meet demand. So when the device isn't doing anything, it can run at a lower speed and conserve battery.
Scroll down to and select "performance". This will lock the CPU at 1.6GHz.
Use the "apply on boot" switch to make kernel adiutor start up and apply the setting at every boot.
You will notice dramatically improved responsiveness (immediately) overall.
This should also work with MTCB units or other (non-Joying) units. You must be rooted.
If someone can provide screenshots of the CPU frequency graphs (before/after) I will add them. I am too lazy to run mine in the old state just for getting a picture of before/after, but in a couple of days I will try to add some pictures.
I don't know if the chip will eventually burn up. If it was designed properly, it won't. The Rockchip is used in millions of tablets and other devices, I suspect it is robust by now. It is also advertised on Joying's website as a 1.6GHz quad core, so why is it running at 800 MHz or lower all the time?
There may be a tradeoff, perhaps using ondemand? Would be worth playing around with the other governors and settings to find a way to get max speed only when it is needed. But then again, there may not be any reason to mess with this at all.
This is *not* overclocking and the kernel governor is not a secret. The performance governor will force the processor to run at its maximum advertised speed. I have been running mine this way for >1 week now with no ill effects.
Following these instructions is at your own risk, like almost everything on XDA.
Click to expand...
Click to collapse
There is already a thread here on xda discussing this. Actually that thread started at that time discussing if some sort of overclocking is possible. I'm not so sure if setting the soc to performance Governor and therefore always 1,6 GHz is a good idea. I agree with you that it definitely is an improvement and the unit feels more responsive. But as there is no heat spreader on the soc and the cooling is not very good where the unit is usually placed I'm not so sure if this does not reduce the lifetime or even kills it as someone said that the Rk3188 has no temp management.
I would instead recommend to try tuning the interactive Governor settings instead. The default settings almost never scales up to 1,6 ghz as you found out. But if you set the following two tunables with kernel audiutor the soc will scale up to max as soon as 60 percent load occurs on a core. This at least improved my unit while still keeping the advantages of dynamic frequency scaling. Here are the two variables
/sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load 60
/sys/devices/system/cpu/cpufreq/interactive/hispeed_freq 1608000
I already did some programming to set this variables as early as possible in the boot process without the need of kernel audiutor. But so far it is only active on my unit.
da_anton said:
There is already a thread here on xda discussing this. Actually that thread started at that time discussing if some sort of overclocking is possible. I'm not so sure if setting the soc to performance Governor and therefore always 1,6 GHz is a good idea. I agree with you that it definitely is an improvement and the unit feels more responsive. But as there is no heat spreader on the soc and the cooling is not very good where the unit is usually placed I'm not so sure if this does not reduce the lifetime or even kills it as someone said that the Rk3188 has no temp management.
I would instead recommend to try tuning the interactive Governor settings instead. The default settings almost never scales up to 1,6 ghz as you found out. But if you set the following two tunables with kernel audiutor the soc will scale up to max as soon as 60 percent load occurs on a core. This at least improved my unit while still keeping the advantages of dynamic frequency scaling. Here are the two variables
/sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load 60
/sys/devices/system/cpu/cpufreq/interactive/hispeed_freq 1608000
I already did some programming to set this variables as early as possible in the boot process without the need of kernel audiutor. But so far it is only active on my unit.
Click to expand...
Click to collapse
I am willing to try this ROM out if can post it,
SirOrigami said:
I am willing to try this ROM out if can post it,
Click to expand...
Click to collapse
As you already posted in the ROM builder thread: do you know how to build a ROM with that tool by yourself? Because the code is already on github but disabled.
If not I build you a new one this evening.
da_anton said:
As you already posted in the ROM builder thread: do you know how to build a ROM with that tool by yourself? Because the code is already on github but disabled.
If not I build you a new one this evening.
Click to expand...
Click to collapse
Yeah I do. But I am not really friendly with the choices, and what I Must include and what not.
SirOrigami said:
Yeah I do. But I am not really friendly with the choices, and what I Must include and what not.
Click to expand...
Click to collapse
OK, I'll build you one
Someone around here was discussing possible heat problems on these rockchip units, being why the manufacturer chooses to set the CPU governor this way.
I don't know if this tweak is really advisable unless you add hardware mod like passive heatsink or fan to the chip. I couldn't find any temperature data or sensors from the chip.
da_anton said:
There is already a thread here on xda discussing this. Actually that thread started at that time discussing if some sort of overclocking is possible. I'm not so sure if setting the soc to performance Governor and therefore always 1,6 GHz is a good idea. I agree with you that it definitely is an improvement and the unit feels more responsive. But as there is no heat spreader on the soc and the cooling is not very good where the unit is usually placed I'm not so sure if this does not reduce the lifetime or even kills it as someone said that the Rk3188 has no temp management.
I would instead recommend to try tuning the interactive Governor settings instead. The default settings almost never scales up to 1,6 ghz as you found out. But if you set the following two tunables with kernel audiutor the soc will scale up to max as soon as 60 percent load occurs on a core. This at least improved my unit while still keeping the advantages of dynamic frequency scaling. Here are the two variables
/sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load 60
/sys/devices/system/cpu/cpufreq/interactive/hispeed_freq 1608000
I already did some programming to set this variables as early as possible in the boot process without the need of kernel audiutor. But so far it is only active on my unit.
Click to expand...
Click to collapse
Thanks for the info, didn't know about the other thread.
I wonder if... They just forgot? Has anyone actually experienced a thermal. failure? Is there a data sheet for this thing? The Rockchip is by nature a low power device and they made a design decision not to include thermal management (or even temperature measurement?) ... To me it all points to "should be fine" but your solution is definitely more conservative/safer.
I have an infrared temp gun, but I need to pull apart the dash again, disassemble the unit, remove the DVD transport, and then drive around like that taking measurements... Probably not going to happen.
I did see some photos where a guy added some heatsinks...? On the Joying website maybe?
Sent from my Moto G using Tapatalk
wskelly said:
I did see some photos where a guy added some heatsinks...? On the Joying website maybe?
Click to expand...
Click to collapse
I don't know about the Joying website. But ptclabs and I did this and we posted it here: http://forum.xda-developers.com/showpost.php?p=68899885&postcount=22
As I have a heatsink on my SoC I don't mind having it at 1,6Ghz most of the time. But publishing this for everybody as part of a public ROM is maybe not a good idea without being able to measure the CPU temp. That RT3188 is really a cheap piece of electronics.
I don't think you have to drive around to measure this. I guess you could just use a generic 12V power supply and power the unit on your desk. The correct wiring should be written on the unit. Then you can just use any CPU burn app from the Play Store and measure the temp of the SoC with your infrared thermometer. Would definitely be a nice project!
Those of you interested in doing this, I'd recommend you taking a look at this thread regarding overheating:
http://forum.xda-developers.com/and...overclock-mtcd-mtcb-rk3188-quad-core-t3462513
ptclabs said:
being 3188 do not have a temp sensor. none. It will run till it burns or errors out
Click to expand...
Click to collapse
Good to see people steal other members information then try to hide it in another thread....
http://forum.xda-developers.com/and...5-1-1-mtcb-t3394209/post68721156#post68721156
So been working to make this ROM a bit faster. I changed the boot animations to the stock Audi one and shaved 5 seconds off boot. Then I went into developer options and turned off the animations. If you want the transition 0.5x works great too. Next I deleted all the launchers I wasn't using since they have a startup at boot. Now I got a little more in depth. I installed Kernal Adiutor (ROOT) and watched the CPU. I ran a bunch of programs in the background, starting maps, changing menus and noticed the CPU rarely went above 816 Mhz. So I went to adjust the Governor. The performance CPU Governor made everything snappy but running the 1.6 Ghz constantly can't be good for the CPU. I went back to Interactive and adjusted hispeed_freq to the maximum 1.6Ghz and go_hispeed_load to 80% (was originally 96% so 1.6 Ghz would never come on) Finally opening apps would trigger the 1.6 Ghz but it would still go down to the minimum even with Here weGo Maps. I didn't want to mess with the other settings cause I don't quite understand it well. If someone here know how to tweak this CPU more please let me know!!
Everything you need to know about Governors http://forum.xda-developers.com/gene...ors-o-t3048957
---------- Post added at 03:47 PM ---------- Previous post was at 03:45 PM ----------
DO NOT LOCK YOUR CPU ON MAX SPEED. YOU WILL BURN YOUR STEREO UP. Read my research above to speed up your system, without burning up the CPU. Been running those setting for a month.
shawndak said:
Good to see people steal other members information then try to hide it in another thread....
http://forum.xda-developers.com/and...5-1-1-mtcb-t3394209/post68721156#post68721156
So been working to make this ROM a bit faster. I changed the boot animations to the stock Audi one and shaved 5 seconds off boot. Then I went into developer options and turned off the animations. If you want the transition 0.5x works great too. Next I deleted all the launchers I wasn't using since they have a startup at boot. Now I got a little more in depth. I installed Kernal Adiutor (ROOT) and watched the CPU. I ran a bunch of programs in the background, starting maps, changing menus and noticed the CPU rarely went above 816 Mhz. So I went to adjust the Governor. The performance CPU Governor made everything snappy but running the 1.6 Ghz constantly can't be good for the CPU. I went back to Interactive and adjusted hispeed_freq to the maximum 1.6Ghz and go_hispeed_load to 80% (was originally 96% so 1.6 Ghz would never come on) Finally opening apps would trigger the 1.6 Ghz but it would still go down to the minimum even with Here weGo Maps. I didn't want to mess with the other settings cause I don't quite understand it well. If someone here know how to tweak this CPU more please let me know!!
Everything you need to know about Governors http://forum.xda-developers.com/gene...ors-o-t3048957
---------- Post added at 03:47 PM ---------- Previous post was at 03:45 PM ----------
DO NOT LOCK YOUR CPU ON MAX SPEED. YOU WILL BURN YOUR STEREO UP. Read my research above to speed up your system, without burning up the CPU. Been running those setting for a month.
Click to expand...
Click to collapse
I haven't stolen anything! My MTCD unit is my first unit at all of this kind and I have never seen your post/thread or any other post before regarding the governors on MTCx units. Believe it or not but I've spent hours in my garage playing with the governors. I deeply apologize if it looks like anything has been stolen from you.
da_anton said:
I haven't stolen anything! My MTCD unit is my first unit at all of this kind and I have never seen your post/thread or any other post before regarding the governors. Believe it or not but I've spent ours in my garage playing with the governors. I deeply apologize if it looks like anything has been stolen from you.
Click to expand...
Click to collapse
Keep doing what you are doing!
[/COLOR]
da_anton said:
I haven't stolen anything! My MTCD unit is my first unit at all of this kind and I have never seen your post/thread or any other post before regarding the governors on MTCx units. Believe it or not but I've spent hours in my garage playing with the governors. I deeply apologize if it looks like anything has been stolen from you.
Click to expand...
Click to collapse
Talking about the person who started this thread WSKELLY, unless you two are the same person. I find it hard to believe, out of the 1000's of cpu governor apps, the same one I listed had been chosen.
shawndak said:
Good to see people steal other members information then try to hide it in another thread....
http://forum.xda-developers.com/and...5-1-1-mtcb-t3394209/post68721156#post68721156
So been working to make this ROM a bit faster. I changed the boot animations to the stock Audi one and shaved 5 seconds off boot. Then I went into developer options and turned off the animations. If you want the transition 0.5x works great too. Next I deleted all the launchers I wasn't using since they have a startup at boot. Now I got a little more in depth. I installed Kernal Adiutor (ROOT) and watched the CPU. I ran a bunch of programs in the background, starting maps, changing menus and noticed the CPU rarely went above 816 Mhz. So I went to adjust the Governor. The performance CPU Governor made everything snappy but running the 1.6 Ghz constantly can't be good for the CPU. I went back to Interactive and adjusted hispeed_freq to the maximum 1.6Ghz and go_hispeed_load to 80% (was originally 96% so 1.6 Ghz would never come on) Finally opening apps would trigger the 1.6 Ghz but it would still go down to the minimum even with Here weGo Maps. I didn't want to mess with the other settings cause I don't quite understand it well. If someone here know how to tweak this CPU more please let me know!!
Everything you need to know about Governors http://forum.xda-developers.com/gene...ors-o-t3048957
---------- Post added at 03:47 PM ---------- Previous post was at 03:45 PM ----------
DO NOT LOCK YOUR CPU ON MAX SPEED. YOU WILL BURN YOUR STEREO UP. Read my research above to speed up your system, without burning up the CPU. Been running those setting for a month.
Click to expand...
Click to collapse
Can you be sure? I missed your post too as helpful as it is.
marchnz said:
Can you be sure? I missed your post too as helpful as it is.
Click to expand...
Click to collapse
Only person that can be sure is the thread starter. Of course we both could have stumbled upon the same idea to speed up a laggy system with a background of CPU governor work. We would then set out to pick the exact same program to set the governor. Just seems odd to me.
Anyways hope my governor adjustments suite y'all. Would highly recommend not running the CPU at max capacity especially when cars can easily get to 150 + in the summer. My xtrons unit has a fan and very large heat sink and I'm still nervous about it.
shawndak said:
Only person that can be sure is the thread starter. Of course we both could have stumbled upon the same idea to speed up a laggy system with a background of CPU governor work. We would then set out to pick the exact same program to set the governor. Just seems odd to me.
Anyways hope my governor adjustments suite y'all. Would highly recommend not running the CPU at max capacity especially when cars can easily get to 150 + in the summer. My xtrons unit has a fan and very large heat sink and I'm still nervous about it.
Click to expand...
Click to collapse
Actually I did exactly that about 2 weeks before this thread was created... It's the most logical thing to do for a noob...go into playstore, type kernel and this app is first result. Go in the app, scroll the options and obviously "performance" sounds promising... Very ordinary I think
Reminds me I need to add on a heatsink to the RK3188 in my unit. It couldn't hurt.
Mighty_X said:
Actually I did exactly that about 2 weeks before this thread was created... It's the most logical thing to do for a noob...go into playstore, type kernel and this app is first result. Go in the app, scroll the options and obviously "performance" sounds promising... Very ordinary I think
Click to expand...
Click to collapse
Thats what i did also.

Categories

Resources