Related
Hey everyone, there is an overclocking app in the market, anyone care to give it a try?
Edit: So I downloaded it lol. Here are some screenshots. BTW, is there anyway I can verify that the cpu freq is actually being adjusted?
*Just for fun I ran neocore to see if it would raise my FPS. lol.
just notice the difference in speed. If you notice please post. And its not overclocking its just clocking. Overclocking will be beyond 528 MHz
Gameloft said:
just notice the difference in speed. If you notice please post. And its not overclocking its just clocking. Overclocking will be beyond 528 MHz
Click to expand...
Click to collapse
The app is called Overclock, you can argue with the developer about the name not me.
Anyways, I do notice a very nice speed increase.
For example, atrackdog would take me at least 20-30 seconds to load my full app list (184 apps)
After installing overclock, it loaded in under 5 seconds.
i'll run other programs, and post my results.
I ran droidgear (game gear emulator) before and after, and I can honestly say it was faster (not a placebo affect).
-Before: droidgear would take over 4 minutes just to get to the menu screen
-After: i was actually able to load a game in under 1 and a half minutes, I even let it sit to run the demo, and it is the fastest ive ever seen an emulator run on this device (compared to NesEmu, and GB emu)
It would probably actually be playable if tweaks were made to the application codebase, and android Open GL stack.
Also, the camera loads instantly after pressing the camera button and via the icon in the home screen.
well, i was too, and then i downloaded it and said "aahh, what the hell, if i break mine, ill just take my wifes haha..." probably not the best of plans but i installed it anyway
sooo i havnt burnt up my phone yet, but here is my issue with the app, does the app only work untill you reboot your phone?
because when i reboot my phone, it goes back to the default speed according to the app
also, my phone tends to hang up (stuck on the apps screen, no buttons work, screen wont rotate, power button wont shut screen off) when using the 528MHz
so far, i havnt found a reason to pay a dollar for it, but ill keep testing
[UPDATE]
resolution for all below tests is 320 x 480
i tried neocore like posted above, using the mid level setting, and i actually did raise my fps from
DEFAULT CPU (248 MHz): 20.5 (with sound off)
384 MHz: 25.0! (with sound off)
DEFAULT CPU (248 MHz): 14.5 (with sound on)
384 MHz: 20.8 (with sound on)
still havnt gotten the fast speed to work yet, but im still trying to figure that out, on another note, sweeter home does seem to load a little faster
[UPDATE]
Incase you didnt see my sig, im not running on a ADP1 phone, so that might by why the fastest setting doesnt work for me, but so far 384MHz is making a noticeable difference with NEOCORE and SWEETER HOME
andonnguyen said:
The app is called Overclock, you can argue with the developer about the name not me.
Anyways, I do notice a very nice speed increase.
Also, the camera loads instantly after pressing the camera button and via the icon in the home screen.
Click to expand...
Click to collapse
i use snap photo, which used to take FOREVER to load up on my g1 using the camera button, its significantly faster using the 384MHz setting, good observation
Ok, so so far here is a list of things ive noticed (using 384MHz vs 248MHz):
-FPS in NEOCORE increased on adverage 5 to 6 fps
-Sweeter Home doesnt lag NEARLY as much as it used to (ALOT less force closes)
-Snap Photo doesnt take a month to load using the camera button
-G1 Wakes up properly which was a issue my g1 (and others on this forum) had
-Even though the app says it will "kill" the battery, using 384MHz during normal use of the phone isnt "killing" my battery, however, doom (while runs better (even with sound on)) seems to be dropping my battery level faster, but the game is running faster, which is the trade off id expect when running these apps together
At this point is there really a need? My phone doesnt lag that much that I need to over clock not to mention my battery life sucks already.
speoples20 said:
At this point is there really a need? My phone doesnt lag that much that I need to over clock not to mention my battery life sucks already.
Click to expand...
Click to collapse
all of our battery life sucks unless you have the extended battery, im not getting THAT big of a battery drain according to the system monitor app, and it DOES make a difference on g1's that have lag issues (running tons of apps like i do)
in other threads, people have complained about the g1 not waking up quickly sometimes, ive yet to have that issue since ive clocked mine up to the 384MHz setting
@woot, you do know that the default cpu freq on the G1 is ~384mHz. So you might want to change in your sig that you're overclocked to 384mHz lol.
The program installs a script on your sd card called ocx_tmp.sh and adjusts it that way, it'll write to /system as -rw (from what I've discussed with someone) would probably cause instability.
The program will reset the cpu freq back down to 384mHz after the phone sleeps. You can verify this in terminal emulator by typing:
$su
#cat /proc/cpuinfo
Try it before and after setting the cpu freq in overclock and you'll see what I mean =)
I thought the the CPU ran at 528 MHz by default? Or is it clocked dynamically and this forces it?
Gameloft said:
just notice the difference in speed. If you notice please post. And its not overclocking its just clocking. Overclocking will be beyond 528 MHz
Click to expand...
Click to collapse
andonnguyen said:
@woot, you do know that the default cpu freq on the G1 is ~384mHz. So you might want to change in your sig that you're overclocked to 384mHz lol.
Click to expand...
Click to collapse
im not as familiar with clocking/overclocking so i wasnt sure if i was clocking it to 384, overclocking it to 384, or what, so what would be the proper thing to put in my sig? lol because according to my first quote, true overclocking wouldnt be untill i went beyond 528, so from the view of my first quote, im not OVERclocking, im clocking, wheras your saying im overclocked
andonnguyen said:
The program will reset the cpu freq back down to 384mHz after the phone sleeps. You can verify this in terminal emulator by typing:
$su
#cat /proc/cpuinfo
Click to expand...
Click to collapse
so is it infact the program thats changing the cpu freq or is it the phone? if its the program, is this to avoid overworking the cpu without the demand?
andonnguyen said:
.
The program will reset the cpu freq back down to 384mHz after the phone sleeps.
Click to expand...
Click to collapse
by sleep do you mean turning the screen off using the power button? because i saw no change in my cpu freq when doing so using your commands
ivanmmj said:
I thought the the CPU ran at 528 MHz by default? Or is it clocked dynamically and this forces it?
Click to expand...
Click to collapse
dont know, but i found this over at the android community:
Technical Features
Supports WCDMA/HSUPA and EGPRS networks
Multimedia Broadcasting Multicast Service (MBMS)
Integrated ARM11™ applications processor and ARM9™ modem
QDSP4000™ and QDSP5000™ high-performance digital signal processors (DSP)
528 MHz ARM11 Jazelle™ Java® hardware acceleration
Support for BREW® and Java applications
Qcamera™: Up to 6.0 megapixel digital images
Qtv™: Playback up to 30 fps VGA
Qcamcorder™: Record up to 24 fps QVGA
Up to 4 million triangles per second, and 133 million depth-tested, textured 3D pixels per second fill rate
gpsOne® position-location assisted-GPS (A-GPS) solution
Support for third-party operating systems
Digital audio support for MP3, aacPlus™ and Enhanced aacPlus
Integrated Mobile Digital Display Interface (MDDI), Bluetooth® 1.2 baseband processor and Wi-Fi® support
maybe that info will help? if not sorry
I remember reading somewhere by someone that it runs at 384 by default, and I think the post above confirms that...
ivanmmj said:
I thought the the CPU ran at 528 MHz by default? Or is it clocked dynamically and this forces it?
Click to expand...
Click to collapse
no, it runs at 384 by default, and clocks down even lower in the idle loop.
i am curious how this program works, as the normal cpufreq interfaces are not compiled in the kernel.
i've been running my phone for several months now at 528mhz, at a fairly minimal detriment to battery life.
i did however notice that without modifying the idle loop, the amount of cpu frequency switches even while the phone is not sleeping drops your average clock within a 10 second period to somewhere closer to 400mhz.
after modifying the idle loop to not switch frequency so often, i was able to get 27.4fps out of neocore w/o sound, and 22.7fps w/ sound.
my overall caffeine benchmark score was 582.
battery life impact is there, but fairly small. phone lasts for about a day and a half now where it used to last for sometimes 2. under heavy use, this is of course dramatically reduced.
gui fluidity is definitely increased, and sluggishness between app switches and when the translucent app drawer opens up is gone. i like it, but to the average person there probably is no need to do it.
keep in mind this is also not overclocking the cpu, it's clocking it to its default spec. as it is an embedded arm, it is designed to run hot, so i guarantee you are in no danger of hurting your phone.
also, do not listen to people that claim there could be no gain from overclocking, just because the bus speed is slower than the cpu speed does NOT mean there will be no improvement in system performance. if that were the case, there'd be no use for 4ghz desktop processors.
cache still runs full speed, and common execution paths stay in cache meaning no prefetch from system memory, meaning BIG improvement in many cases. (that's why cache exists.)
damnoregonian said:
no, it runs at 384 by default, and clocks down even lower in the idle loop.
i am curious how this program works, as the normal cpufreq interfaces are not compiled in the kernel.
i've been running my phone for several months now at 528mhz, at a fairly minimal detriment to battery life.
i did however notice that without modifying the idle loop, the amount of cpu frequency switches even while the phone is not sleeping drops your average clock within a 10 second period to somewhere closer to 400mhz.
after modifying the idle loop to not switch frequency so often, i was able to get 27.4fps out of neocore w/o sound, and 22.7fps w/ sound.
gui fluidity and responsiveness is greatly improved. sluggishness if app switching and the translucent app drawer are completely gone.
for many i imagine this means there isn't really any reason to clock the cpu up to its stock speed, but to each their own.
my overall caffeine benchmark score was 582.
battery life impact is there, but fairly small. phone lasts for about a day and a half now where it used to last for sometimes 2. under heavy use, this is of course dramatically reduced.
Click to expand...
Click to collapse
care to write up a how-to for getting the 582 consistantly and changing the idle loop?
Holy crap. Used this @528MHz with Haykuro's version 4.5 apps to sd ROM and the osk works SO MUCH BETTER!!!! Also I got 25.6 fps on neocore... very smooth
wootroot said:
care to write up a how-to for getting the 582 consistantly and changing the idle loop?
Click to expand...
Click to collapse
writeup? no. it's a big process involving the android dev environment, a modified version of mkbootimg and unyaffs.
i will gladly post the kernel modifications for those who want to recompile the kernel to do so.
the bootloader sets the clock speed, and the idle loop simply clocks down to a preset and back up to whatever it was previously after x milliseconds of inactivity (not to be confused with sleep) it's kind of a poor man's cpufreq arbitrator.
so on top of tweaking the idle loop to not drop down as often, you also have to explicitly set the frequency in the kernel upon bootup, or it will bet set at what it thinks is full speed, which is 384.
A modded version of JF's ROM would ROM.
I DO notice the sluggishness and it bugs the heck out of me. (I switched from a WING with a 200MHz CPU, and although it IS faster than the wing, it doesn't seem significantly faster and seems to much slower when I open up the camera...
damnoregonian said:
writeup? no. it's a big process involving the android dev environment, a modified version of mkbootimg and unyaffs.
i will gladly post the kernel modifications for those who want to recompile the kernel to do so.
the bootloader sets the clock speed, and the idle loop simply clocks down to a preset and back up to whatever it was previously after x milliseconds of inactivity (not to be confused with sleep) it's kind of a poor man's cpufreq arbitrator.
so on top of tweaking the idle loop to not drop down as often, you also have to explicitly set the frequency in the kernel upon bootup, or it will bet set at what it thinks is full speed, which is 384.
Click to expand...
Click to collapse
that involved eh?
thanks for this post though, now i understand more about the idle loop and why the cpu freq resets with each reboot
maybe someone can take this stuff further like he said, that kind of stuff would be worth the dollar, imo more than a dollar
well... i don't mind providing basic procedure and source, i just don't want to get dragged into level 1 support of the procedure.
i'll go ahead and package up some source, prebuilt boot images based on JF's RC33 (which is what i run) and a basic procedure.
Hello again,
Is there any risk with runnin my G1 at 528 constantly? I've got the big battery and its just so nice to not have to watch the lag all the time. Thanks.
Hi, there is absolutely no way your phone could be damaged. It's not actually clocking the CPU over it's native frequency, simply reclocking it. Also the voltage is left unchanged. To save battery the manufacturer (HTC) set the frequency much lower, but clearly that won't be an issue to you.
Thanks so much! I appreciate it
I have try this with 528Mhz, and i can say it's not very good for the battery.
only 528 Mhz - > max. 1 day
with dynamic CPU clock ~ 2 days
I use 528 max 376 min, its pretty good.
As some may now, the droid 4 can be overclocked already thanks to TEKAHUNA the link below is a link to his thread. All instructions and download links are there i currently am overclocked to 1388. All vsel controls are available also.
Link
tekahunas thread
After loading the modules you can use quickclock advanced to change ALL values.
Sent from my DROID4 using XDA App
Have you tried OCing higher? Or are you just keeping it at 1388 to be safe?
phrir1 said:
As some may now, the droid 4 can be overclocked already thanks to TEKAHUNA the link below is a link to his thread. All instructions and download links are there i currently am overclocked to 1388. All vsel controls are available also.
Link
tekahunas thread
Sent from my DROID4 using XDA App
Click to expand...
Click to collapse
If you check my Utility I added an Overclock Install option. It also has links to a better video guide to overclocking.
jgardner said:
Have you tried OCing higher? Or are you just keeping it at 1388 to be safe?
Click to expand...
Click to collapse
Yeah i was running 1.4 stable for a little while, but after a while i noticed lag here and there so i just dropped it down to 1388 to be on the safe side. After loading the modules i use quickclock advanced to play with all the settings.
Sent from my DROID4 using XDA App
Hi phrir1, mattlgroff,
Which file should I download for Droid 4? I cannot see it was listed there but only saw Droid 3 only.
BTW, is it no problem to running on stock 2.3.6 rom ?
Million thx!
I kept to use 2.3.6 because of webtop 2.0
Kent
I installed the two zip from recovery, but in the ommand-line, I have no "overclock" directory under /proc/.
Anybody can use that desription?
Adamyno said:
I installed the two zip from recovery, but in the ommand-line, I have no "overclock" directory under /proc/.
Anybody can use that desription?
Click to expand...
Click to collapse
please use the jbx kernel I posted in developers section
lucize said:
please use the jbx kernel I posted in developers section
Click to expand...
Click to collapse
I installed CM 11 Nightly, kernel 3.0, kernel_jbx, moto_init_d, mo_simp_1.5_spyde zip files, but nothing happens, I have no overclock directory
Adamyno said:
I installed CM 11 Nightly, kernel 3.0, kernel_jbx, moto_init_d, mo_simp_1.5_spyde zip files, but nothing happens, I have no overclock directory
Click to expand...
Click to collapse
On CM11 you can only use lucize's jbx kernel or dtrail1's jbx kernel to overclock, you're installing a bunch of things that shouldn't be used on CM11
I've been using stargo's CM11 with dtrail1's jbx kernel with the droid 4 overclocked/undervolted to 1.3ghz and GPU at 384mhz with good stability (certain settings like interactive govenor will make the device unstable though), lucize's kernel is based off dtrail1's kernel and should be more suited for our device.
I use KitKat 4.4.4 slimkat or CM11
and jbx kernel from lucize
to change cpu setting i use no-frills CPU or Trickstar MOD
but in this programs I can't go more then 1,3 GHz
from comand line I don't have /proc/overclock dir
where can I change proper CPU values ?
I only want to check if phone can work with bigger and to have few more point in Atutu :>
jaqjacek said:
I use KitKat 4.4.4 slimkat or CM11
and jbx kernel from lucize
to change cpu setting i use no-frills CPU or Trickstar MOD
but in this programs I can't go more then 1,3 GHz
from comand line I don't have /proc/overclock dir
where can I change proper CPU values ?
I only want to check if phone can work with bigger and to have few more point in Atutu :>
Click to expand...
Click to collapse
You have to use the MPU OC option to get above 1300mhz. Disable "Battery Friend" first otherwise it won't allow you to adjust the MPU setting.
CPU frequency is multiplied by the MPU, adjusting it will effect all CPU steps much like overclocking frontside bus on a PC, stock is 100, so think of the 1300mhz setting as a 13x multiplier, 300mhz as a 3x multiplier, and so on.
A good, easily achievable OC is 108 MPU
100 MPU x 13 = 1300mhz
108 MPU x 13 = 1404mhz
100 MPU x 3 = 300mhz
108 MPU x 3 = 326mhz
and so on... much beyond this you have to fiddle with the voltages a lot otherwise you will get random reboots, I found I needed a MPU voltage of 1420 (1.420v) to get 1404mhz completely stable. The other voltages are pretty generous and I have found they can be undervolted significantly while running 1.4ghz+.
With the phone at 1495mhz I managed to get just shy of 14,000 in Antutu but it was not stable because of voltages... roughly 1450mhz should be safe for a daily driver while maintaining good battery life and low heat once lowest possible stable voltages are worked out, maybe more, still testing it all myself.
Elanzer said:
You have to use the MPU OC option to get above 1300mhz. Disable "Battery Friend" first otherwise it won't allow you to adjust the MPU setting.
CPU frequency is multiplied by the MPU, adjusting it will effect all CPU steps much like overclocking frontside bus on a PC, stock is 100, so think of the 1300mhz setting as a 13x multiplier, 300mhz as a 3x multiplier, and so on.
A good, easily achievable OC is 108 MPU
100 MPU x 13 = 1300mhz
108 MPU x 13 = 1404mhz
100 MPU x 3 = 300mhz
108 MPU x 3 = 326mhz
and so on... much beyond this you have to fiddle with the voltages a lot otherwise you will get random reboots, I found I needed a MPU voltage of 1420 (1.420v) to get 1404mhz completely stable. The other voltages are pretty generous and I have found they can be undervolted significantly while running 1.4ghz+.
With the phone at 1495mhz I managed to get just shy of 14,000 in Antutu but it was not stable because of voltages... roughly 1450mhz should be safe for a daily driver while maintaining good battery life and low heat once lowest possible stable voltages are worked out, maybe more, still testing it all myself.
Click to expand...
Click to collapse
Thanks! 400 Points more on first try and still testing.
Could you share yours daily use cpu parameters ?
For example
1300 x MPU 108 1420
1100 x MPU 108 1380
.....
or just print screens from trickstar mod or any other cpu app.
I'm curies about battery level too.
Other thing on mys Milestone2 i have only 4 CPU Frequency step with custom changeable example: originaly was 1000,800,600,300 best for my 1200,900,500,300
On Droid 4 apps shows that I have more then 10 on Lucid Kernel
Does cpu governors use all of that steps ?
If there are only few of them can I and should I change those steps ?
jaqjacek said:
Thanks! 400 Points more on first try and still testing.
Could you share yours daily use cpu parameters ?
For example
1300 x MPU 108 1420
1100 x MPU 108 1380
.....
or just print screens from trickstar mod or any other cpu app.
I'm curies about battery level too.
Other thing on mys Milestone2 i have only 4 CPU Frequency step with custom changeable example: originaly was 1000,800,600,300 best for my 1200,900,500,300
On Droid 4 apps shows that I have more then 10 on Lucid Kernel
Does cpu governors use all of that steps ?
If there are only few of them can I and should I change those steps ?
Click to expand...
Click to collapse
These are my current settings. I'm still working on them because I adjust them then use the phone for 2 full days / charges to test the stability, not every stepping is adjusted completely down - I adjusted/tested the middle voltages in groups and only adjusted the top/bottom voltages individually. There's no quick way to test them because they'll test perfectly in a CPU stress test app then within 5min of browsing the device will reboot. These particular settings have been stable for a few days. I could not get even 1443mhz stable what so ever, even after adding +75 to all voltage steps, so maybe 1.4ghz is closer to a realistic limit.
Also the voltages on this device/kernel seem to have a limit of how low you're allowed to set it. I'm not sure if this is an artificial limit or a limit of the hardware, but 952 is the lowest voltage available for 300mhz even though the device could likely undervolt far more at this frequency. Since 100 and 200 also use the same 952 voltage, there is zero point in setting the minimum frequency to anything lower than 300, as they all use the same voltage.
I'm not allowed to post a link directly because I don't have 10 posts yet (this rule is stupid), but here you go: hxxp://i.imgur.com/01xb0Wp.png
The CPU govenor uses all steps provided you're using ktoonservative. I found I couldn't use most other governors because they would freeze the device (ie: switching CPU governor Interactive would freeze the device, switching the I/O governor from deadline to sioplus freezes, etc). There is lots to adjust in the ktoonservative governor for performance/battery life.
I'm currently using these settings right now with good results as a balance between battery life and performance:
up_threshold 80
up_threshold_hotplug 85
down_threshold 30
down_threshold_hotplug 25
sampling_down_factor 10
sampling_rate 35000
sampling_rate_screen_off 30000
freq_step 1
disable_hotplugging 0
freq_step decides how much the CPU ramps up, a setting of "1" ensures it uses all frequencies. If you use "20" it'll increase the frequency to the closest 20% each time instead of closest 1%. Set to 100 and the governor works identical to the "ondemand" govenor (ie: CPU will go straight from lowest to highest speed). The thresholds have to do with how much % the CPU utilization has to be at before it will increase or decrease the frequency, so lower numbers can increase responsiveness by having the CPU increase it's speed quicker.
I use yours governors conifg
and
MPU 108
1404 Mhz - 1302
1296 Mhz - 1300
1188 Mhz - 1275
1080 Mhz - 1275
972 Mhz - 1255
864 Mhz - 1210
756 Mhz - 1160
648
540
432 Mhz - 1117
324
216
108 Mhz - 952
those are my stable for now
but the battery isn't so good I can only dream about 2 days
It is how your say benchmark pass but open some app and chance for reboot is 50/50
Is there a way to see current voltage ?
Because phone shouldn't work on 1404Mhz x 1302v and i think that I miss something.
jaqjacek said:
I use yours governors conifg
and
MPU 108
1404 Mhz - 1302
1296 Mhz - 1300
1188 Mhz - 1275
1080 Mhz - 1275
972 Mhz - 1255
864 Mhz - 1210
756 Mhz - 1160
648
540
432 Mhz - 1117
324
216
108 Mhz - 952
those are my stable for now
but the battery isn't so good I can only dream about 2 days
It is how your say benchmark pass but open some app and chance for reboot is 50/50
Is there a way to see current voltage ?
Because phone shouldn't work on 1404Mhz x 1302v and i think that I miss something.
Click to expand...
Click to collapse
I am 3 days uptime on these current settings at 111 MPU with heavy use:
Code:
hxxp://i.imgur.com/17iPAZL.png
The phone rebooting is generally caused by voltage being too low. 1302 is way too low for 1404mhz and is probably why you're getting the reboots. The "1302" value translates to "1.302v" which is a perfectly normal CPU voltage, but it's really low and I can't imagine that being stable for you since I need "1390" for 1404. There isn't a way of checking the current voltage other than looking at the current frequency.
I have not further reduced the 1332 and 1221mhz settings yet as I found reducing them was causing my issues getting above 109 MPU. Probably in a week or two so of use and adjustments I'll post my final tuned settings after I squeeze all I can out of it, I just require a few days of solid uptime to verify stability because I can't seem to find a stress testing program that ensures total stability. it's just that I test each setting over a period of days. My settings might not work for you since all CPUs aren't identical in quality, but it should give you a ballpark of settings.
If you want to improve battery further try looking at adjusting the automatic screen brightness, I'm currently using these settings, although you could easily further reduce brightness:
Code:
hxxp://imgur.com/D3sKAIn
hey guys, just imported 2 droid 4s to the uk.
an amazing device still today i think.
Can anyone suggest how to get mpu oc to stick after reboot? It always seems to reset to 100.
The frequency oc sticks but drops to 1300 due to mpu not sticking.
Hello all !
I was bored in school today so I've written a governor concept idea for quad cores. I'm not a dev AT ALL (for now at least, i'm studying many different stuff, hardware / code related too).
I have no idea if this is possible or if this is clever but I wanted to share it anway. If it gives idea to a developer, that's totally worth it, otherwise, well... I had fun doing it
It's called Progressive.
Progressive
The name of the governor says all. The idea behind it is to be «*progressive*». It means it doesn't unleash the full power when it's not needed. It goes progressively higher in freq with more cores. This should make the phone cooler and the battery better. The delay (3 sec ) is just a number, not sure this is really nice. Also, I'm not sure how the S4 handles temperature.
Max freq 1.5 Ghz
Min freq 384 Mhz
Screen off
=> 384-918 Mhz // not too low frequency to avoid reboot
Screen on without touching since 3 sec // always check after 3 seconds for changing the state
=> 384-1134 Mhz only one core online
Screen on touched
=> 594-1134 Mhz two cores online // bump the min_freq to avoid keyboard lag and to add a bit of butter
Screen on touched with a medium load of task // not sure how quantify this
=> 594 Mhz – 1.5Ghz two cores online
Screen on touched with a high load of task // i.e. Games
=> 702 Mhz – 1.5 Mhz four cores online // max power
We also need a thermal protection to avoid any damage, this should do the trick
If the temp is >= 80°C
=> Two cores online max_freq 1134 Mhz until it reaches 70 °C // not sure about the temp, this can be adjusted
If the temps is >=70°C
=> Let 4 cores being possibly online but lower the max_freq to 1134 Mhz
Click to expand...
Click to collapse
What do you guys think ? Is this even possible ? Good, bad idea ?
I hope you enjoy reading it as much as I enjoyed to writte it
doesn't it do this already?
Fissurez said:
doesn't it do this already?
Click to expand...
Click to collapse
I'm not sure how the ondemand governor on nexus 4 works. So I can't really answer, it's really a noob idea that poped into my head today
you pretty much described interactive with mpdecision enabled.
not exactly, but quite.
3 seconds is way too long for the CPU to ramp up (just a matter of tweaking, though). you'd get more lag than you save battery.
mpdecision ramps the cpu to its maximum frequency as soon as a touch input is detected (normally only 2 cores until a certain threshold is reached), so yours should save a bit of power during smaller workloads.
also, if the touch input is released, it clocks the active cores down to 1.02 GHz for a bit before disabling them when not needed.
after all, it seems like a more conservative interactive governor with active mpdecision. could be nice for saving battery while retaining good performance.
it could be a viable choice for those who go for battery life over performance. :good:
Nuu~ said:
you pretty much described interactive with mpdecision enabled.
not exactly, but quite.
3 seconds is way too long for the CPU to ramp up (just a matter of tweaking, though). you'd get more lag than you save battery.
mpdecision ramps the cpu to its maximum frequency as soon as a touch input is detected (normally only 2 cores until a certain threshold is reached), so yours should save a bit of power during smaller workloads.
also, if the touch input is released, it clocks the active cores down to 1.02 GHz for a bit before disabling them when not needed.
after all, it seems like a more conservative interactive governor with active mpdecision. could be nice for saving battery while retaining good performance
Click to expand...
Click to collapse
Thank you Sir, I understand better how mpdecision works now
Glad to see i'm not completely stupid lol
Moto Z2 Force is a blazing fast smartphone. This out of any doubt.
Fore sure it is the fastest phone I've ever worked on.
On the shelf a lot of phones seem to be fast, BUT when you install over 200 apps on them and you are using 7 home screens full of widgets (ehm...) things become "a bit" different...
Not this time: over 200 apps installed didn't change it's fantastic speed. It's like working on an iPhone.. BUT this *is* doing something too! :laugh:
What's more interesting is that... it can be even faster too!!!
Many smartphones can be sligtly overclocked because of heating and battery life needs that lead manufacturer to lock frequencies to lower values respect of SoC capabilities. BUT usually root isn't enough to have overclock access, since higher frequencies need a modified kernel to be unlocked..
But Moto Z2 Force is not "one of many" smartphones...
Motorola confirmed my first impression I had on my old Griffin (Moto Z): they are making smartphone for "geeks"!
Moto Z2 force is using an 8 core Snapdragon 835 using "big-LITTLE" architecture:
- 4 high performance Kyro 280 cores clocked between 345 and 2361 MHz (big)
- 4 low power Kyro (???) cores clocked between 672 and 1900 MHz (LITTLE)
(frequencies adopted on EU unbranded XT1789-06... on different markets/versions they could differ...)
Obviously, low power cores work most on screen off conditions and during light tasks, while high performance ones enter the game when more performances are required as we have already seen on many similar architectures...
What's particularly interesting is that 2361 MHz is NOT the higher frequency of Kyro 280 and 672 MHz is NOT the lower frequency low power Kyro can work before going to deep sleep condition...
In fact big cores can work up to 2457 MHz (in a single step) and LITTLE ones down to 300 MHz (with 300, 364, 441, 518, 595 MHz intermediate steps available!)
What's is even more interesting is that simply by having root and a (great!) app called Kernel Adiutor - available on Play Store too - we can go to change (temporary or permanently) these values to overclock and/or underclock our system, eventually having better performances and/or better battery lifes...
I'm testing this and results are confirmed (by Kernel Adiutor statistics too...) and interesting: Z2 Force is not a device prone to overheat (like was my old Griffin instead... ) and so it seems to work with no issues at all @2457 MHz with interesting Geekbench 4 results as attached (please note that results are taken with all my 200 apps still installed & working... on lighter conditions they could be quite better too...).
In any case they are better than any Android Device recorded to date in Geekbench 4 charts... expecially for Multi-Core results...!! :highfive:
Underclock LITTLE cores from 672 MHz to lower values could (and I underline could...) improve battery life expecially during screen off conditions, BUT there are considerations to be taken:
- lower frequencies involves more time out of "deep sleep" condition too...
- on many devices adopting very low frequencies often lead to slow (or difficulties in...) "screen back on" operations
BUT there are MANY frequencies to eventually test so... games are open!!!
In any case, Motorola again! :good:
Feedbacks and eventual Geekbench4 / Antutu results on different clock settings are the welcome...
This is with the pantheon Kernel, prior to poking it.
https://browser.geekbench.com/v4/cpu/4880631
I'm doing some little tune up experiments with frequencies and these are some first results:
- lowering lower working frequency of LITTLE cores up to 345 MHz (from 672 MHz) seems to create no issues or delays on powering on screen even using fingerprint sensor...
On the other hand I'm still not so sure of eventual power saving benefits (my Z2 setup is already very good during screen off time with an average consumption of about 1,5%/hr... so eventual differences are minimal)
- I've to doublecheck it (more confirms needed...) but I'm quite sure big cores are clocked at faster frequency (2.45 GHz) during boot up, then (when exactly?) lowered to a max frequency of 2.36 GHz... this seems to me simptom of a very well tuned up system...
Does somebody have voltages/frequencies tables for our phone?
enetec said:
I'm doing some little tune up experiments with frequencies and these are some first results:
- lowering lower working frequency of LITTLE cores up to 345 MHz (from 672 MHz) seems to create no issues or delays on powering on screen even using fingerprint sensor...
On the other hand I'm still not so sure of eventual power saving benefits (my Z2 setup is already very good during screen off time with an average consumption of about 1,5%/hr... so eventual differences are minimal)
- I've to doublecheck it (more confirms needed...) but I'm quite sure big cores are clocked at faster frequency (2.45 GHz) during boot up, then (when exactly?) lowered to a max frequency of 2.36 GHz... this seems to me simptom of a very well tuned up system...
Does somebody have voltages/frequencies tables for our phone?
Click to expand...
Click to collapse
They're in the kernel. I tried to do normal edits to lower and increase, but it did something weird and just parked them at 30mhz after compile...
Edit: https://github.com/Uzephi/kernel_nash/blob/upstream/arch/arm/boot/dts/qcom/msm8998-v2.dtsi
There is the link to the file that controls the frequencies for each bin of our phone
Uzephi said:
They're in the kernel. I tried to do normal edits to lower and increase, but it did something weird and just parked them at 30mhz after compile...
Edit: https://github.com/Uzephi/kernel_nash/blob/upstream/arch/arm/boot/dts/qcom/msm8998-v2.dtsi
There is the link to the file that controls the frequencies for each bin of our phone
Click to expand...
Click to collapse
Very complex!
I will take a deep look at this as soon as I would have a bit of time...
enetec said:
Very complex!
I will take a deep look at this as soon as I would have a bit of time...
Click to expand...
Click to collapse
Essentially, little CPU has one speed bin and frequencies available from 300-1900 and big CPU has 4 speed bins with frequencies from 300-2592. Top end changes depending on your bin. I.E. silicon lottery. Speed bin 0 can step higher than bin 3
Edit: to find speed bin, it's usually in proc/kmesg or proc/last_kmesg. Needs root to read
Uzephi said:
Essentially, little CPU has one speed bin and frequencies available from 300-1900 and big CPU has 4 speed bins with frequencies from 300-2592. Top end changes depending on your bin. I.E. silicon lottery. Speed bin 0 can step higher than bin 3
Click to expand...
Click to collapse
Yes, on my own device max available speed is 2457 MHz... but my doubt is, how a single device (using same software) would choose between different bins?
Anyway is voltage the complexity I was referring to... at first look It seems not using a fixed one for a single frequency as on my old LG G2 but a range... I've to look better at it...
Some first interesting results from tests have been achieved...
I will post a more detailed report in one day or two...
enetec said:
Yes, on my own device max available speed is 2457 MHz... but my doubt is, how a single device (using same software) would choose between different bins?
Anyway is voltage the complexity I was referring to... at first look It seems not using a fixed one for a single frequency as on my old LG G2 but a range... I've to look better at it...
Click to expand...
Click to collapse
It's quite simple. At boot the kernel reads all "devices" on the computer (our case, the phone) and runs checks at low level on the hardware for software revisions, serial numbers, Mac addresses and guess what? The speed bin embedded in the chip. It then runs a cmdline for the system to read the results to access the devices and use the kernel correctly. This is how I manipulated the system to read the bootloader as locked. On my kernel, go to developer options and you will see you can toggle bootloader unlocking. This is because the cmdline tells the system we are still locked.
Uzephi said:
It's quite simple. At boot the kernel reads all "devices" on the computer (our case, the phone) and runs checks at low level on the hardware for software revisions, serial numbers, Mac addresses and guess what? The speed bin embedded in the chip. It then runs a cmdline for the system to read the results to access the devices and use the kernel correctly. This is how I manipulated the system to read the bootloader as locked. On my kernel, go to developer options and you will see you can toggle bootloader unlocking. This is because the cmdline tells the system we are still locked.
Click to expand...
Click to collapse
Nice!
Anyway I saw official documentation of SD835 speaks about 2.45 GHz as max frequency... so other speed bins are for special/overclocked lots probably...
enetec said:
Nice!
Anyway I saw official documentation of SD835 speaks about 2.45 GHz as max frequency... so other speed bins are for special/overclocked lots probably...
Click to expand...
Click to collapse
Cherry-picking a commit by Flar2 on his Pixel 2 kernel that enables the 2.5Ghz on all bins. Hopefully it works.
Uzephi said:
Cherry-picking a commit by Flar2 on his Pixel 2 kernel that enables the 2.5Ghz on all bins. Hopefully it works.
Click to expand...
Click to collapse
Have you found (during you searches...) where is the routine which changes max frequency from 2.45 GHz to 2.36 GHz after boot?
enetec said:
Have you found (during you searches...) where is the routine which changes max frequency from 2.45 GHz to 2.36 GHz after boot?
Click to expand...
Click to collapse
Those are both different bins. Maybe it loads one then the other? In any event all bins will be 2.5 if this works. Building now
Edit: checking my device, I don't go down to 2.36, max on mine is 2.45
Uzephi said:
Those are both different bins. Maybe it loads one then the other? In any event all bins will be 2.5 if this works. Building now
Click to expand...
Click to collapse
Uhm... I'm not so sure this is bin related, since max frequency (2.45 GHz) still remains usable, but no more used after boot (it can be re-enabled by Kernel Adiutor anyway)... this is more a simple setting IMHO...
enetec said:
Uhm... I'm not so sure this is bin related, since max frequency (2.45 GHz) still remains usable, but no more used after boot (it can be re-enabled by Kernel Adiutor anyway)... this is more a simple setting IMHO...
Click to expand...
Click to collapse
That's your bin which is set at boot... My bin gives me 2.45 by default... I am not rooted and haven't made changes. See attached screenshot
Built and works... See screenshot. All I did was change kernel. No other settings done. Next it to try UV
Uzephi said:
That's your bin which is set at boot... My bin gives me 2.45 by default... I am not rooted and haven't made changes. See attached screenshot
Click to expand...
Click to collapse
Nope. Your app reports only min & max available frequencies but not the used ones... In fact, if you look at your screenshot, min frequency is reported to be 300 MHz for all CPUs, BUT if you look at your frequencies at the screenshot moment, they are respectively 672 MHz for LITTLE & 345 MHz for big cores, that are the really used as min frequencies as stock.
If you install Kernel Adiutor all will be clearer for you... it reports all this in better way...
Uzephi said:
Built and works... See screenshot. All I did was change kernel. No other settings done. Next it to try UV
Click to expand...
Click to collapse
It works for sure... because probably new frequencies are still not used... see my previous post.
Try it out then ?
Edit: be sure to flash twrp boot image, then kernel then root. SU and Magisk lose root when flashing our kernels right now and will pull backup kernel from backup boot image
Edit 2: if you also look at my "after" screen, the CPU was pegged at 2.0 and 2.5 respectively due to just booting up and loading assets.