Hi Everyone
I have OC Widget installed on my phone (htc hero sprint) and I was wondering is there a way to confirm that the speed being reported by OC widget is in fact the actual cpu speed. My reasons for doubting this are that
1) even with a setting 710mhz the phone seems kind of sluggish at times
2) I get notifications of cpu settings changes when turning my screen off to on but I do not see a change in the number displayed in the widget (it is always set at the on screen speed)
adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
*edit*
I would be interested in knowing where you read CPU temperature information, though.
Doward said:
adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
*edit*
I would be interested in knowing where you read CPU temperature information, though.
Click to expand...
Click to collapse
CPU temp huh...i have no idea lol
Since you brought it up I do have a question for you that is somewhat related, can access heat (from either the battery or cpu) cause a reboot (either a complete reboot going through all the load screens or just a reboot to boot back into the home screen).
I was experiencing quite frequent reboots (the later of the two I described above) and had initially thought maybe they were app related but could never determine if that was the cause.
I was over clocking and underclocking so was wondering if maybe that could have lead to some instability issues.
dsMA said:
CPU temp huh...i have no idea lol
Since you brought it up I do have a question for you that is somewhat related, can excess heat (from either the battery or cpu) cause a reboot (either a complete reboot going through all the load screens or just a reboot to boot back into the home screen).
I was experiencing quite frequent reboots (the later of the two I described above) and had initially thought maybe they were app related but could never determine if that was the cause.
I was over clocking and underclocking so was wondering if maybe that could have lead to some instability issues.
Click to expand...
Click to collapse
Clock speed and voltage go hand in hand - if you are adjusting one without the other, yes, you will affect stability. Heat also plays a part - now, specifically can a hot battery cause a CPU malfunction? Yes, but unlikely. More likely, the heat will affect the voltage from the battery and case CPU instability via that path.
Hello.
Undervolting your CPU has always been a daunting task - there's so many CPU steps, if you pick say -100mV to all frequency steps and you get a reboot, how do you work out which step (or steps!) is causing the problem? If you undervolt -25mV on one frequency, then wait a couple of days to make sure it's stable, then reduce the same frequency by another 25mV.. you'll still be undervolting a year later.
This thread is my tutorial on how to do a best effort at quickly and safely undervolting your phone CPU.
First of all - is undervolting your CPU worth it?
Initially it was thought not to make much difference, but after some serious testing (thanks AndreiLux), "we" decided that it was a good idea. I also did my own basic testing, and it looks like it's worth it.
What are the advantages of undervolting?
Better battery life
Cooler phone, especially useful if you overclock your CPU
What are the disadvantages of undervolting?
That's the great thing! Really the worst that can happen is your phone freezes or reboots. The steps below should eliminate all of that. Once you have undervolted your CPU to just above its freeze/crash levels, there are no disadvantages!
Note: I have had some minor data loss (eg an app forgets a setting) after an undervolting related crash, but it was rare and I believe has to do with the Perseus kernel "Enable dynamic FSync" setting. I note below how to mitigate against this.
What do you need?
A rooted phone, and a kernel that supports undervolting. Perseus and Siyah will work, but any kernel should be fine that supports SetCPU's undervolting schema
SetCPU or you can use a combination of STweaks and Stability Test (use STweaks for setting the frequency and voltage, and use Stability Test's Classic Test for the stress test)
A paper and a pen - I used Sticky Notes as I was at a computer for most of the process
Some patience
Let’s begin.
Open SetCPU. You’ll be greeted by the Main screen which has the min/max CPU frequencies, the governor options, and the IO scheduler options. Reduce the max CPU frequency to the lowest step. On the SGS3 this will be reducing 1400MHz down to 200MHz, so you now have both the min and the max set at 200MHz. The phone will get pretty slow at this point. Ensure the Set on Boot option is unticked
Set the governor to Performance (note: you have to make sure all cores of your CPU are being used. In a complex kernel such as Perseus, you'll have to go into STweaks and set the CPU hotplug lock to 4 so all 4 cores are used. Also note there appears to be a bug in Perseus at the time of writing: you have to set the hotplug lock BEFORE you change the governor to performance)
Move to the Voltages screen
Ensure the Set on Boot option is unticked, and scroll down to the lowest setting, and change it to something low, like 700mV, and then apply it (click the third icon from the right at the top of the screen, a rectangle with a tick on it) . This first setting is always a bit of guess and check, and to be honest you’re hoping for the phone to freeze or crash on this first one. Has it frozen? If so move on to the next step. If not, reduce it by a further 25mV and apply again, repeat until your phone freezes or reboots.
So, you have undervolted too far. Reboot the phone, and perform steps 1-3 again. At step 4, use the voltage that crashed your phone +25mV (eg if it crashed at 675mV, this time set it to 700mV). Now, you have a very slow phone running a low voltage that doesn’t immediately crash it. Move on to the next step
An easy crash test I found was simply allowing the phone to go into deep sleep, and waking it up again. To do this, unplug your phone if it’s charging, and turn the screen off. At this point I usually wrote the time down on my piece of paper, as well as what frequency and voltage I was testing as I’m prone to forget these things. Wait 5 minutes with the screen off (and make sure no notifications have come in while the screen is off – this wakes the phone up and you’ll have to wait another 5 mins), then turn the phone on. You’ll know it’s gone into deep sleep as there’ll be a slight delay before the screen turns on as compared to no delay when turning it off and immediately back on again. If the phone doesn’t turn on, go to step 5. If your phone comes out of deep sleep OK, move on to the next step.
Now, we stress test. In SetCPU scroll over to the Info screen, and scroll down to the Stress Test option. Start it, and note down the time on your paper/Sticky Notes. Your CPU will now run as hard as it can at the current frequency. Let it run for 15-20 minutes. At the lowest frequency it will be pretty laggy and slow, if you think it has frozen always give it 30 seconds to see if it picks up again. If it gets stuck for over a minute, you probably have a crash. Go to step 5. If after 15-20 minutes it’s still running, you have found your first stable(ish) voltage for that frequency! At this point I saved the voltages in SetCPU by pressing the diskette icon. To ensure the changes are written to disk turn the phone screen off for 5 seconds then turn it back on again.
We are now ready for the next frequency. There’s pretty much no way a frequency will run stably on a lower voltage than a frequency below it, so our first voltage for the next frequency up should be the same stable voltage we found for the previous frequency. For example if we found a stable voltage of 725mV on the 200MHz frequency, our first test voltage for 300MHz should be 725mV. Write this down with the frequency on your paper. In the Main screen of SetCPU, change the max frequency to the next step up. Then, in the Voltages screen, adjust the voltage to be the same as the lower frequency, as discussed above. If your phone immediately freezes or reboots, move to the next step. If not, go to step 10.
So, you have undervolted too far, again! Reboot your phone, open up SetCPU, and in the main screen ensure the max frequency is set to the frequency we’re testing. Give the sliding bar things a jiggle to apply it. Ensure the governor is set to Performance by pressing it on the lower left part of the screen. Move to the Voltages screen, and you’ll either see your previous “saved” voltage values ready to be applied in dark grey under the “current” voltage settings, or you’ll have lost your “saved” voltage settings. If you have lost them, never fear; just restore the latest settings by clicking the first from the right icon at the top (a square with an arrow pointing outwards). Adjust the frequency we’re testing’s value to 25mV more than the value you last used when it crashed, and apply it. If it crashes immediately, repeat this step. If not, move on
We now start the two tests in steps 6 and 7 again, but this time if your phone crashes or freezes, go to step 9. If it completes the deep sleep and stress test tests, go to step 8 for the next frequency test.
Sorry for the complexity here, but it was the easiest way I could write it without repeating myself too much. The TL;DR version goes like this:
Pick the lowest untested frequency, set the max frequency to this and the governor to Performance, and find the lowest voltage that doesn’t immediately crash the phone
Put the phone into deep sleep, and see if it crashes. If it does, increase the voltage for the current frequency we’re testing by 25mV and test again. If not, move on
Run a stress test on the phone for 15-20 minutes. If it crashes, raise the voltage by 25mV and go to step B. If it doesn’t crash the current frequency is now tested. Go to step A
You now have a set of frequencies that shouldn’t immediately crash the phone. Set the min and the max frequencies back to normal, and set the governor back to your usual governor. At this point for me I was able to use the phone for about 2 hours before I had my first crash. How running a stress test on each frequency for 20 minutes didn’t pick up this crash situation I’m not sure, but it didn't.
After screwing around for a while I found the easiest solution was to just raise each frequency step by 25mV and then continue every day usage. That was enough to stabilise my phone. If it still crashes for you, keep raising all the values by 25mV until it settles down. After a day or two of no crashes you can start slowly one by one reducing each step by 25mV again to find out which step caused the crash.
After that, you should be done!
Ps I know there is another thread around here discussing undervolting, but I found it too vague on the details and sometimes wrong, so I thought I’d share my experiences in the hope it might help.
Good work!
Would you pls post your testing results for our reference?
Thanks.
Mod edit: please do not quote the OP.
A table with the running undervolting settings would be a great orientation help. Given that, people don't need to trail and error from scratch.
Sent from my Nexus 4 using xda app-developers app
me_max said:
A table with the running undervolting settings would be a great orientation help. Given that, people don't need to trail and error from scratch.
Sent from my Nexus 4 using xda app-developers app
Click to expand...
Click to collapse
Under/over volting doesn't work that way. Each chip is unique, and chips are tested only on default voltage and frequencies, so each one's behavior on non-default settings is unpredictable. Some are able to work on 100 mV lower voltage, some can't handle even -25mV... Trial and error is the core of overclocking.
yep, that's one of the reasons i disagreed with the other UV thread - they list absolute voltage levels which are only applicable to the specific grade of chip in their phone (and yes, I posted some corrections in the other thread but they were ignored).
Have a look HERE if you'de like to see all the different possible default voltage settings for the i9300/i9305.
As a rough rough guide of a voltage level for the 200MHz step that will (hopefully) crash your phone, I'd start at 650mV.
i have tested my cpu
for stable values and i finished with these settings:
200Mhz - 0.775V
300Mhz - 0.800V
400Mhz - 0.825V
500Mhz - 0.850V
600Mhz - 0.875V
700Mhz - 0.900V
800Mhz - 0.925V
900Mhz - 0.950V
1000Mhz - 0.975V
1100Mhz - 1.000V
1200Mhz - 1.050V
1300Mhz - 1.100V
1400Mhz - 1.150V
1500Mhz - 1.200V
My exynos is stable for 2 months now, i play a lot of new games like most wanted etc.
In UV more important is leaving phone in idle, deep sleep on and off, or non demanding tasks, if i UV too much games were stable but i had random restarts when phone was in the pocket sleeping. But, as You mentioned, every cpu is different so everyone has to test it...
Thank you OP for this very, very useful guide. I am new to undervolting and even though I have a T999V north-american model with the Qualcomm SoC, this will prove very useful in my experimentation.
Only difference with the Qualcomm is that clock speed can go as low as 96Mhz, but you can't undervolt under 700mV - SetCPU just refuses to apply anything under that.
No probs
That's a kernel limitation, not SetCPU. Check with your kernel dev to see if they can allow further undervolting.
I tried to make the instructions as generic as possible so any stepping config could use them. good luck!
I'm doing my 96Mhz test and running a stress test.
The loading circle is still moving just fine (although a bit sluggishly) but none of my buttons are responding at all so I cant leave the test until I pull the battery. Would this count as a freeze/crash, or do you think this voltage is okay to stick at (or even go lower?!)
That's just the CPU bogging down, it's not a voltage issue.
hi guys. this might sound like a dumb question but i honestly looked everywhere but i cant seem to find the UV in setcpu. i'm i missing something?
Probably the kernel you're using doesn't support UV.
Hey
I find that 200 is stable on 687500
And then when I move to edit 300 it reboots
Then increased the number on both and still reboot.
I don't restart in between. Any idea??????
Sent from my GT-I9300 using xda app-developers app
tony1234567890tony said:
Hey
I find that 200 is stable on 687500
And then when I move to edit 300 it reboots
Then increased the number on both and still reboot.
I don't restart in between. Any idea??????
Sent from my GT-I9300 using xda app-developers app
Click to expand...
Click to collapse
That means that 200 is NOT stable. Try using a higher voltage. 0.6875v is ridiculously low
TP.
What do you mean low he says in the op to reduse to 700
THC for fast answear
Sent from my GT-I9300 using xda app-developers app
tony1234567890tony said:
What do you mean low he says in the op to reduse to 700
THC for fast answear
Sent from my GT-I9300 using xda app-developers app
Click to expand...
Click to collapse
Default voltage for 200mhz step is 0.9v (for me on asv2). So 0.7v (which is still higher than what you have set) it a whopping 200mv less than stock which is like I said before, ridiculously low. It may run at this voltage for you for now(depending on your as level), but I can pretty much guarantee you that it will never be 100% stable
I'll take your THC ; ) lol
TP.
Thanks I'll give you feed back
Sent from my GT-I9300 using xda app-developers app
omniwolf said:
Probably the kernel you're using doesn't support UV.
Click to expand...
Click to collapse
i thought the matr1x kernel supports it. UV works fine in trickster mod. i don't even have a heading for 'voltages' in the the app like it's shown in the play store.
tony1234567890tony said:
What do you mean low he says in the op to reduse to 700
THC for fast answear
Sent from my GT-I9300 using xda app-developers app
Click to expand...
Click to collapse
yep, as STAticKY says, if you get a reboot on a step, then it's not stable. raise the voltage on that step and try again.
STAticKY said:
Default voltage for 200mhz step is 0.9v. So 0.7v (which is still higher than what you have set) it a whopping 200mv less than stock which is like I said before, ridiculously low. It may run at this voltage for you for now, but I can pretty much guarantee you that it will never be 100% stable
I'll take your THC ; ) lol
TP.
Click to expand...
Click to collapse
This is only correct for your ASV value. Please edit this post, it contains incorrect information. Your default voltage for 200MHz might be 0.9v, but for other people it's likely different, as they have different quality chips. Read post 3, 4, and 5 in this thread for more info.
genericuser2013 said:
i thought the matr1x kernel supports it. UV works fine in trickster mod. i don't even have a heading for 'voltages' in the the app like it's shown in the play store.
Click to expand...
Click to collapse
possibly the matirx kernel does support UV, but it might not be exposed in the way that SetCPU is expecting. Does the Matrix kernel developer recommend a specific app to adjust the voltages? If so use that, you can still follow my guide.
Can anybody tell me how to determine ASV-level of my chip?
is anybody else having an issue when you underclock? i usually set it to 1.4Ghz but the phone overrides the setting i put up using Atuntu CPU master. i feel that the phone is still fluid when underclocked, so i tend to under clock to save battery life(and stop if from overheating to 105.1 degrees farenheit).i need to get full usage out of my phone as the day starts at 5 AM till 5PM with heavy usage
any luck with this issue?
Kernel on forums if you have compatible phone. Inteli and trickster with thermald disabled. Lock freq. While your at it, look up your soc bin and and start trialling undervolts.
42 8996883
Steamer86 said:
Kernel on forums if you have compatible phone. Inteli and trickster with thermald disabled. Lock freq. While your at it, look up your soc bin and and start trialling undervolts.
Click to expand...
Click to collapse
in English please? o dont get what wou mean by the SOC Bin and the part after that. i did the trickster, but it still overrides it.
You can't make it stick with default kernel. You need a modified one with inteli so thermald doesn't auto override. SOC bin is details on your "CPU" quality for base volt values, better SOC means better overclock, underclock, and undervolting. If you're serious in doing this, search and learn. This isn't simple modification, and you will not be able do this in simple way. Make sure you have set on boot checked in trickster. Well work somewhat better, but still not a permanent solution.
WARNING WALL OF TEXT
This is a dirty trick to solve the overheating issue on our beloved K3 Note, at least it works for me.
My worst overheating issue on this phone was the phone went into shutdown mode when I was playing Ingress (hot day in a car without AC). I haven't test it on Ingress yet after I made the modification, but on Pokemon GO and Clash Royale, no more serious lag on Pokemon GO (didn't test on the evolution animation yet), no lag in Clash Royale and Ingress, and no overheating even when connected to power source (2.1A power bank in my test). The phone will still be a bit hot especially at the front speaker area, but so far it is not enough to trigger the overheating warning for me.
I take no responsibility in case your phone is damaged from using this method.
Steps:
1. Root is required.
2. Download any root file manager (ES File Explorer) for me. Go to /etc/.tp and rename thermal.conf into something else (eg: off.thermal.conf.off).
3. Install Kernel Adiutor from Play Store. Open Kernel Adiutor, go to CPU and change the CPU Maximum Frequency to 1560Mhz. Set the CPU Governor to Interactive. Open CPU Governor Tunables, set hispeed_freq to 1560000. Enable Apply on boot.
4. Reboot
I test this on Androium VUI 1 ROM by Matx13. My personal result is very promising in my nearly 24 hours test. The phone will be a bit slower due to 130Mhz reduction on CPU speed, but enough for gaming (at least for me). At least there's no more overheating warning.
If you are using external casing, lose the casing if you are gaming on K3 Note.
I hope this is useful.
Can anyone confirm it is truly working ?
Is it still stable and well-functioning ?
This overheating issue annoys to much !
Thanks you.
(FIXED)
Assalam o alaikum
Hi
I've an lg v20 Us996
Unlocked bootloader amd rooted
When i first bought this phone it was liquid and buttery but after few days device starts lagging and stucking,i farctory restored it but no fruit then plan to root it and j rooted it but still the device keep lagging.
I've strictly monitored the activities of my cpu and the thing which i captured is that My cpu min and max frequencies keep changjng by it self which makes it laggy.
Like the max frequency is 2.15, but i automatically scales down to 400mhz,900mhz,1036 and some others frequencies which slow down the device.
Even if i use kernal auditor and set the max frequency to sclae up still it automatically changes.
I've used 3different kernals and on stock based rom(weta rom)
Still the same issue.
Is it a hardware issue or software issue?
Thanks in advance
First off, this shouldn't be posted in the development section as it's unrelated to development.
Second, the CPU is supposed to scale, change frequencies depending what the phones doing, 307 MHz-2.15 GHz. If the CPU stayed at 2.15GHz, you would face dramatically shortened battery life and eventual overheating. Thermal throttling is a necessity. LG is a bit more conservative compared with some other vendors I have noticed but if the issue has just started I would look more towards a particular app running afoul.
+1 for app craziness... If you utilize any 3rd party stores, ie Aptoide,Blackmart,ect... Then I HIGHLY suggest getting some sort of active antivirus on your device at this point. Malware is getting good enough to bypass Google Play filters, what do you think is going on on the less-than-monitored stores? Mayhem... Silent, costly mayhem. Chances are, if your CPU is doing all of that randomly, and especially if it is getting warm for no reason/battery drain from sitting and doing nothing, chances are your device is part of an Ethereum/Bitcoin MineNet, making someone money... I suggest getting a Norton AntiMalware scanner.. I KNOW.. Norton blows on windows.. But it cleared my device of the exact same plagues... Just watch out for that FinSpy... That bites.... I just had a bit of that as part of an entire multi-zero-day attack on my networks I am in the process of writing up reports for CVE's.... It made a mesh network between anything with Wifi, Bluetooth, or IR... Kernel level on windows 10... and with the climate of today, and how you started the thread, if I were you, and if you connect your phone to your computer, and if you run Windows 10, then I would check your MBR, and your bootsec as well for possible buffer overflows that lead to code injection that might send your device booting elsewhere while images are being made of your system... This is a long shot... But these are the symptoms I experienced, which led me to literally watch my logcat with aLogCatView live for about 2 hours, watching my mic go on and off, and then once, in light blue letters, I caught FinSpy, with nothing after those letters... just a notation that scrolled on...
Now more than ever, exercize proper security. Especially on a device who's sec has been bypassed by the same exploits that the malware will use to gain access to do damage. We praise DirtyCow for giving us our phones, truly. But the nefarious praise it for giving THEM OUR devices... Just my .2
Ducter said:
First off, this shouldn't be posted in the development section as it's unrelated to development.
Second, the CPU is supposed to scale, change frequencies depending what the phones doing, 307 MHz-2.15 GHz. If the CPU stayed at 2.15GHz, you would face dramatically shortened battery life and eventual overheating. Thermal throttling is a necessity. LG is a bit more conservative compared with some other vendors I have noticed but if the issue has just started I would look more towards a particular app running afoul.
Click to expand...
Click to collapse
The problem was with thermal engine which I've fixed
maxi65 said:
The problem was with thermal engine which I've fixed
Click to expand...
Click to collapse
How did you fix it?
Sent from my LG-H918 using XDA-Developers Legacy app
Assalam o alaikum
You just simply have to replace thermal engine configuration file form your system/etc folder using root explorer and everything will be fine and smooth (in sha Allah)
Use root explorer
Go to system and find for 'etc' Folder
Then in etc folder find ' thermal engine 8996' and create a backup of that file by simply copy that file to your internal storage or wherever you want
Then replace this file with that file which I've provided you in attachment
Note: the attached file is in 'txt' format
Change the extension from 'txt' to 'conf' by simply renaming the file then replace it.
Thanks man You saved