Overclocking Qualcomm 7201 on Android OS

Search This thread

BAD_BOY_KIEV

Senior Member
Nov 9, 2008
183
56
Kiev
Google Nexus 4
OnePlus One
Hi there!!
Seems to me no one hasn't began this knd of theme. So. Off. info:
Qualcomm MSM7201a
Two cores
ARM11 + ARM9
528 Mhz (one stated speed for two cores...)

So what is G1's heart for real?

This is quotes from here
#1
Jean-Baptiste Queru 26 нояб 2008, 20:37

Indeed, the CPU in the G1 is clocked lower than its maximum rated
speed to conserve battery life. It's running somewhere between 300 and
400MHz if I remember correctly.

JBQ
#2
jdc4429 27 нояб 2008, 17:04

Hi Jean,

So your saying that the CPU speed is not controlled by the Android
software?
I was looking through the code and found this in the arch/arm/mach-msm/
clock.c file...

617 #define CPUFREQ_TABLE_MAX 4
618 static struct cpufreq_frequency_table cpufreq_table[] = {
619 { 0, 81920 },
620 { 1, 122880 },
621 { 2, 245760 },
622 { 3, 384000 },
623 { CPUFREQ_TABLE_MAX, CPUFREQ_TABLE_END },
624 };

It looks like the max speed is set to 384mhz and it seems it can be
easily changed.
It also seems that the phone already downshifts the CPU based on this
table and the
screen_open/closed speed setting...

702 if (screen_on) {
703 policy->user_policy.min = cpufreq_table
[2].frequency; // 245mhz
704 policy->user_policy.max = cpufreq_table
[3].frequency; // 384mhz
705 } else {
706 policy->user_policy.min = cpufreq_table
[0].frequency; // 82mhz
707 policy->user_policy.max = cpufreq_table
[2].frequency; // 245mhz
708 }

Sure looks controllable to me through Android. Is it really that hard
to add a setting to allow min/max settings
to be adjusted by the user?

Thanks
Jeff
#3
Romain Guy 26 нояб 2008, 20:39

> Can that
> be changed in software on the fly and was it set below maximum speed
> to help with the battery issue?

No and yes :)

> Also is anyone working on adding hardware acceleration so we can take
> full advantage of the processor?

We have a prototype of SGL running on top of OpenGL (it was actually
shown publicly in the SDK 0.9) but it's not the correct solution at
the moment.

Coclusion:
1) Google DevTeam does not know, or don' wanna tell, ca we\how to change CPU's speed or\when it would be possible to get the hardware accelariotion etc.
2) From stated 528Mhz we get 384Mhz maximum, as stated by Jean-Baptiste Queru and the code quote.

Both these I suppose seems not fare for us users)
So, can it be solved through the OS modifing??
 
Last edited:

djind

Senior Member
Jul 9, 2008
520
13
Oh yeah that's another good point -- almost all of my experience on mobile
hardware has been that the memory bus speed was far more of a performance
bottleneck than the CPU was. It generally just wasn't useful to run the CPU
at its fastest speed and consume more power, because most of what it would
be doing was sitting there waiting on memory.

I don't know what is more important, the memory/cpu ratio working at its best or battery life. We'll have energy plans soon for android me thinks..
 

DebauchedSloth

Senior Member
Jan 27, 2008
459
76
It's very worthwhile to read the entire thread:

http://tinyurl.com/9kme8v

Of particular note, the effect on battery life of clocking the CPU at full speed, and the apparently minimal performance boost.

Of real interest, and the very obvious bang for the buck, is the speed of Dalvik. Note that it's 7-8x slower than comparable JITs. About in line with what you'd expect, but it does imply that if we want to see some serious speed increases - and, I would think, battery life improvements - replacing Dalvik would be the obvious place to start. Or making it JIT, of course.
 

diabolical28

Senior Member
Feb 3, 2008
160
0
Milwaukee
might be but lets say im at home plugged in or what not... then we could scale our CPU... like BatteryStatus or integrate it into an app somewhat like Locale or Power Manager...
End users look at the End result. my phone is rated at 528mhz and it is running slightly over half its rated operating speed. Battery life? Give me 528mhz and let HTC and Tmobile Recall there $h*tty batterys :p
 

philje123

Senior Member
Dec 6, 2006
622
87
Paderborn
The only advantage I can think of for this is for demanding games for instance but any other time its good to have it under clocked to save on battery juice. and the phone is fast enough running at half its rated speed!

Phil
 

diabolical28

Senior Member
Feb 3, 2008
160
0
Milwaukee
The only advantage I can think of for this is for demanding games for instance but any other time its good to have it under clocked to save on battery juice. and the phone is fast enough running at half its rated speed!

Phil
once you get demanding apps installed such as hello aim. phoneplus dgalerts etc there is constant hiccups and the phone becomes bogged down like i said give me 528mhz and let htc,tmo replace there $h**ty batteries didnt they hear over a year ago there was a huge advancement in nano tech for batteries ;)
 

DebauchedSloth

Senior Member
Jan 27, 2008
459
76
once you get demanding apps installed such as hello aim. phoneplus dgalerts etc there is constant hiccups and the phone becomes bogged down like i said give me 528mhz and let htc,tmo replace there $h**ty batteries didnt they hear over a year ago there was a huge advancement in nano tech for batteries ;)

True, but *if* it is the CPU which is bogging down (which I am not convinced is the case), the solution is as I stated - speed up Dalvik - not to put the CPU into a mode which drains the battery down even more quickly than it does today. If the fix is to clock the CPU at a higher rate (which again, seems not to be the case), that's only a stepping stone to the ultimate solution, which is going to be removing some apps, since the battery life is marginal right now anyway.
 

Gary13579

Retired Moderator
Nov 14, 2008
524
69
The reason why Android is underclocked is posted in the full thread. After a certain point, the increase in speed you get by bumping up the CPU slows down, because it's limited by FSB speed. An example of this (not real numbers), is that a CPU running at 50% speed could actually be closer to 75% speed.

Sure, the CPU CAN run at 100% speed, but after the FSB slows it down, it'll only be 75%. So after a point, increasing CPU speed isn't worth it.
 

roguestatuskat

Senior Member
Dec 2, 2008
150
0
snelltown
hmm
i wonder if we would get an app too monitor it or
under and overclock by adjusting a slider
anywhere from 50% to 150% or whatever is possible
that is anywhere from 264Mhz to 798Mhz which would be amazingly fast
 

dirr

Member
Dec 6, 2008
26
0
I believe JF has already tested some code to do this, but mentioned that it is highly unstable.
 

coolbho3000

Retired Senior Recognized Developer
Dec 26, 2008
897
785
I don't know what is more important, the memory/cpu ratio working at its best or battery life. We'll have energy plans soon for android me thinks..

Sure, it might not be entirely "worth" it in terms of performance/battery ratio... but that doesn't mean it isn't worth a try. People keep saying "don't bother" but nobody has actually tried an overclocked G1. Maybe it's worth it for demanding gaming or apps while the phone is (gasp) plugged in.
 

inpherno3

Senior Member
Mar 22, 2008
194
5
back when i had my wing and so did ttran. Which uses the OMAP processor it was able to overclock over 100mhz faster than it was meant to go. Had real good luck overclocked to 288mhz. Which made the phone run at the speed that it SHOULD have ran at... including faster loading web pages, faster loading everything basically. Which hardly is an issue with the g1, but imagine how much more snappy it would be with an extra 100mhz also? People say its not worth it and it drains the battery more.... umm... if anyone here owns a g1 (surely hope so at least!) you probably know that the battery sucks anyways and needs charging all the time. Would love to see a good OC app made for the g1 =-) (with scaling like battery status was for the wing, which underclocked when screen was off, overclocked when screen was awakened which was amazing for battery life, as the phone doesnt need much power to accept a call, but when the screen is lit.... scaling occurs and it bumps it right up to 288mhz)
 

jdc4429

Member
Nov 9, 2008
45
1
The reason why Android is underclocked is posted in the full thread. After a certain point, the increase in speed you get by bumping up the CPU slows down, because it's limited by FSB speed. An example of this (not real numbers), is that a CPU running at 50% speed could actually be closer to 75% speed.

Sure, the CPU CAN run at 100% speed, but after the FSB slows it down, it'll only be 75%. So after a point, increasing CPU speed isn't worth it.

I think the question is... Are there any circumstances where this may help...

And either way how difficult is it to add a control under settings to allow you to modify the default method?

You could basically apply the same argument to anything... Until someone tries, we will not know for sure. What next? Don't bother trying to add a swap file cause it may not help? Don't bother trying to speed up Dalvik cause it will take too much memory?

That's the fun of open source...

jdc4429
 

MoridinBG

Senior Member
Jan 27, 2007
109
2
FSB could really be the bottleneck here. From my experience overclocking mobile CPUs (PXA255, PXA263, PXA270, Samsung 300Mhz, TI OMAP 850) several percentage change on FSB speed or Memory speed could make significant performance changes.
The last WinMob device I had - Dell Axim x51v had a PXA270 CPU@624Mhz. Pumping the bus from 208Mhz to 230Mhz and the CPU speed from 624 to about 700 did abput 50% improvement in several bencmarks (floating point, integer calculations, memory speed, graphics subsystem).
On the other hand pumping the CPU to 1014Mhz, (0.99GHz, the highest 24/7 stable for my device) while lowering the FSB to 185Mhz (23Mhz drop) led to about 10% lower result than at stock frequencies.

700Mhz CPU, 230Mhz FSB was totally 24/7 under stress tests with almost no extra heat, providing aboyt 50% extra performance, while battery life was about 30-40% shorter.
My experience with it showed that it could be worth for short speed bursts, while running many apps. When you are finished you return to normal frequencies.
 

unrafa

Senior Member
Dec 17, 2008
370
72
Galicia
LineageOS
it will be perfect when the speed of the cpu uses 528Mhz and auto adjusts: high speed - mid speed - low speed - sleep, "ondemand"

android should use ondemand kernel module which does exactly that. (maybe this cpu cant do that?)