anyone know how to config this for our atrix? Thanks.
motoatrix said:
anyone know how to config this for our atrix? Thanks.
Click to expand...
Click to collapse
Install 2.1.1a or higher, and select "Nvidia Tegra 2..." as the frequency set. You will not be able to configure it as much as other phones, due to the way the Motorola kernel is built. Not until a super-dev is able to build a custom kernel for the Atrix...
You can't change the governor, but you can still set the minimum/maximum frequencies based on profiles, etc.
u can reduce speed, set screen off profile and reduce speed even more
or u can run it @ 1ghz all the time but the max u'll get is 1 ghz
lindsaytheflint said:
Install 2.1.1a or higher, and select "Nvidia Tegra 2..." as the frequency set. You will not be able to configure it as much as other phones, due to the way the Motorola kernel is built. Not until a super-dev is able to build a custom kernel for the Atrix...
You can't change the governor, but you can still set the minimum/maximum frequencies based on profiles, etc.
Click to expand...
Click to collapse
Yeah because we don't have a modified kernel yet (See bootloader issues) we can do a minimum 216 and max 1000. Profiles work nicely though.
SetCPU increases performance 10%
That's the difference I experienced when I installed it.
lindsaytheflint said:
Install 2.1.1a or higher, and select "Nvidia Tegra 2..." as the frequency set. You will not be able to configure it as much as other phones, due to the way the Motorola kernel is built. Not until a super-dev is able to build a custom kernel for the Atrix...
You can't change the governor, but you can still set the minimum/maximum frequencies based on profiles, etc.
Click to expand...
Click to collapse
Battery savings during under clocking is just great..
Related
So Whats the difference.
I prefer Tegrak just because it allows finer control over CPU settings but at the same time it seems more Dev's are willing to add setcpu support into the kernel vs tegrak.
My question is what is the real difference and which do you recommend?
I currently run both, setcpu for its profiles and Tegrak for its finer control, but should I switch to just setcpu or just tegrak?
TIA
Tegrak is a module which sits on top of an unaltered kernel, and alters it. Set CPU needs an altered kernel to function. Tegrak I think is the better and more stable option
Sent from my Samsung Galactic Crusader S II
I don't think it's wise to have two apps controlling cpu settings at the same time. I would stick to one app only.
brianmay27 said:
So Whats the difference.
I prefer Tegrak just because it allows finer control over CPU settings but at the same time it seems more Dev's are willing to add setcpu support into the kernel vs tegrak.
My question is what is the real difference and which do you recommend?
I currently run both, setcpu for its profiles and Tegrak for its finer control, but should I switch to just setcpu or just tegrak?
TIA
Click to expand...
Click to collapse
Don't run both, they will conflict with one another.
I've implemented a generic cpufreq range regulation based on a previous work proposed by newmail here.
With "generic" I mean that it can work with any cpufreq governor, the whole logic is implemented in the core cpufreq subsystem using early_suspend hooks.
How does it work?
Without this patch set applied, using for example the ondemand governor, the cpu frequency ranges always between 200MHz to 1200MHz (without overclocking/underclocking the device) that are the min and the max frequency supported by the processor.
With this patch set applied the frequency is regulated in the range [min ... max/2] when the screen is off and [max/2 ... max] when the screen is on. If the cpu doesn't support exactly max/2 an appropriate frequency is chosen, as close as possible to the theoretical value (for the GT-I9100 it's 500MHz).
Advantages
This forces background apps to always run at lower frequencies, reducing the power consumption when the phone is not used interactively, and, at the same time, boost the cpu at max speed when used interactively. IOW, it's faster and it drains more battery life when the phone is used interactively, and the battery last longer when the phone runs background tasks.
An additional side-effect using 'ondemand' is that the heuristic always works with shorter ranges, so the cpu ramps up / down faster to the target frequency. The feeling is that everything seems smoother and more responsive. I only tested ondemand for now, but the same logic should apply to the other available governors as well.
Source code
I like to post source code, more than binaries, so in attach you can find only the patches that implement this feature. The patches can be applied on top of the original Samsung kernel - Update2. These patches are also included in my kernel tree on github.
Patch set description
The 1st patch 0001-cpufreq-frequency-regulation-based-on-screen-on-off-.patch, implements the dynamic cpufreq range regulation logic. This patch is totally generic, so theoretically you can use it with any Android device.
The 2nd patch 0002-cpufreq-do-not-forget-min-max-clock-frequency-on-cpu.patch is required by multicore systems with cpu hotplugging enabled. It allows to resume the right frequency range on a cpu when it goes offline and then back online.
The 3rd patch 0003-mach-s5pv310-cpufreq-800MHz-sleep-death-fix.patch is specific for the GT-I9100 hardware. It's the 800MHz sleep death fix: the hardware requires to suspend the cpu always at 800MHz, so with the dynamic cpufreq range regulation this is always needed, independently of the particular governor you're using.
The 4th patch 0004-pm-hotplug-do-not-consider-frequency-in-the-cpu-hotp.patch is specific for the GT-I9100 hardware. It makes the cpu hotplug heuristic independent of the cpu frequency; this is required to properly offline the secondary cpu when screen is on _and_ the dynamic cpufreq range regulation patch is applied.
The 5th patch 0005-pm-hotplug-disable-secondary-cpu-auto-hotplug-when-s.patch is specific for the GT-I9100 hardware. It always sets the secondary cpu offline when the screen is off.
The 6th patch 0006-mach-s5pv310-cpufreq-smooth-scaling.patch is specific for the GT-I9100 hardware. It is needed to fix a wrong behavior with governors that run at a fixed frequency (like 'performance', 'powersave' or 'userspace'). Basically, the low-level driver doesn't allow to switch from a very low frequency to a very high frequency, so in some cases the actual cpu frequency can be different than the frequency requested by the higher layers. This fix introduces a smooth scaling mechanism in the low-level driver that allows to switch to the target frequency incrementally in multiple steps.
Everything is transparent to the higher layers, so in this way we are sure that the actual cpu frequency is always the same value requested by the cpufreq governor. See also the commit in my kernel on github.
NOTE: the last patch (0006-mach-s5pv310-cpufreq-smooth-scaling.patch) is a fix for the low-level cpufreq driver of the GT-I9100 that should be _always_ applied IMHO, even without the dynamic cpufreq range regulation patch.
ChangeLog
v2 -> v3
fix a wrong behavior (cpu stuck at 800MHz) with fixed-frequency governors (i.e, performance, powersave, or userspace).
v1 -> v2
fix: allow to offline the secondary cpu when screen is on
always disable the secondary cpu when screen is off
Looks promising, hope it works well, will sure try it out, but some kernels has almost the same built in...
Great work!
Uploaded a new version of the dynamic frequency range regulation patch.
There're two additional patches in the patch set:
The first patch (0004) is a fix that allows to properly offline the secondary cpu when screen is on.
The other patch (0005) applies the same concept of the dynamic frequency range regulation to the secondary cpu hotplugging: when the screen is off also the secondary cpu (cpu1) is kept offline, when the screen is on the secondary cpu is turned on/off depending on the load on the primary cpu (cpu0).
thanks a lot for your hard work.apply patch without problem, good for battery life.
a developper like me is very happy to have a master developper like you.
thank you very much it looks cool.
a noob question, how will I apply this zip just CWM or what?
arighi: one thing i don't like the freq min is set to 500 mhz . it is too high.
edit:excuse when screen off the freq reach 200 mhz .it's ok perfect and cpu1 is well disable when screen off
edit2: yay1974 ,apply all patch in the order they are all necessary. but this patch is only for developper who compil his kernel.
pixiebob said:
arighi: one thing i don't like the freq min is set to 500 mhz . it is too high.
edit:excuse when screen off the freq reach 200 mhz .it's ok perfect and cpu1 is well disable when screen off
edit2: yay1974 ,apply all patch in the order they are all necessary. but this patch is only for developper who compil his kernel.
Click to expand...
Click to collapse
hmm i see i wish you had a cwm flashable file for this to apply
yay1974: if you wish you can try my own kernel i have apply patch from this thread and some other good stuff(like sched autogroup, etc...).i obtain more 4000 quadrant:
flash with odin or heimdall:
http://www.megaupload.com/?d=TCQFKISK
commit:
https://github.com/pixiebob/pixie-kernel/commits/master
pixiebob said:
yay1974: if you wish you can try my own kernel i have apply patch from this thread and some other good stuff(like sched autogroup, etc...).i obtain more 4000 quadrant:
Click to expand...
Click to collapse
pixiebob, I see you've applied also the CONFIG_FILE_SYNC_DISABLE patch. Be careful to enable this, it may cause loss of data if applications crash in unsafe ways. Probably if you run quadrant in a kernel with CONFIG_FILE_SYNC_DISABLE=y you'll get about 4500-4600. But actually you're just cheating.
what kernels have this built in (if any)
cheers
@arighi great job on the patches... looking forward to more cool stuff from you.
Great patch, thank you.
pongster said:
@arighi great job on the patches... looking forward to more cool stuff from you.
Click to expand...
Click to collapse
Hey pongster, you are always hanging around here!! When can we see your rom running all tweaks and fixes... looking forward to it...
Sent from my GT-I9100
arighi said:
pixiebob, I see you've applied also the CONFIG_FILE_SYNC_DISABLE patch. Be careful to enable this, it may cause loss of data if applications crash in unsafe ways. Probably if you run quadrant in a kernel with CONFIG_FILE_SYNC_DISABLE=y you'll get about 4500-4600. But actually you're just cheating.
Click to expand...
Click to collapse
thanks i will be careful but until by now i didn't have crash
great patch! I was also working on something similar but your patch is so complete that I gave up working and used yours
just a perfect patch!
pongster said:
@arighi great job on the patches... looking forward to more cool stuff from you.
Click to expand...
Click to collapse
Hey Sar ! You here ?!? .. didnt know ... cook some MIUI stuff dude ... I'll help out
v-b-n said:
Hey Sar ! You here ?!? .. didnt know ... cook some MIUI stuff dude ... I'll help out
Click to expand...
Click to collapse
cooking something up... not a MIUI based one though...
PM me
arighi said:
I've implemented a generic cpufreq range regulation based on a previous work proposed by newmail here.
With "generic" I mean that it can work with any cpufreq governor, the whole logic is implemented in the core cpufreq subsystem using early_suspend hooks.
How does it work?
Without this patch set applied, using for example the ondemand governor, the cpu frequency ranges always between 200MHz to 1200MHz (without overclocking/underclocking the device) that are the min and the max frequency supported by the processor.
With this patch set applied the frequency is regulated in the range [min ... max/2] when the screen is off and [max/2 ... max] when the screen is on. If the cpu doesn't support exactly max/2 an appropriate frequency is chosen, as close as possible to the theoretical value (for the GT-I9100 it's 500MHz).
Advantages
This forces background apps to always run at lower frequencies, reducing the power consumption when the phone is not used interactively, and, at the same time, boost the cpu at max speed when used interactively. IOW, it's faster and it drains more battery life when the phone is used interactively, and the battery last longer when the phone runs background tasks.
An additional side-effect using 'ondemand' is that the heuristic always works with shorter ranges, so the cpu ramps up / down faster to the target frequency. The feeling is that everything seems smoother and more responsive. I only tested ondemand for now, but the same logic should apply to the other available governors as well.
Source code
I like to post source code, more than binaries, so in attach you can find only the patches that implement this feature. The patches can be applied on top of the original Samsung kernel - Update2. These patches are also included in my kernel tree on github.
Patch set description
The 1st patch 0001-cpufreq-frequency-regulation-based-on-screen-on-off-.patch, implements the dynamic cpufreq range regulation logic. This patch is totally generic, so theoretically you can use it with any Android device.
The 2nd patch 0002-cpufreq-do-not-forget-min-max-clock-frequency-on-cpu.patch is required by multicore systems with cpu hotplugging enabled. It allows to resume the right frequency range on a cpu when it goes offline and then back online.
The 3rd patch 0003-mach-s5pv310-cpufreq-800MHz-sleep-death-fix.patch is specific for the GT-I9100 hardware. It's the 800MHz sleep death fix: the hardware requires to suspend the cpu always at 800MHz, so with the dynamic cpufreq range regulation this is always needed, independently of the particular governor you're using.
The 4th patch 0004-pm-hotplug-do-not-consider-frequency-in-the-cpu-hotp.patch is specific for the GT-I9100 hardware. It makes the cpu hotplug heuristic independent of the cpu frequency; this is required to properly offline the secondary cpu when screen is on _and_ the dynamic cpufreq range regulation patch is applied.
The 5th patch 0005-pm-hotplug-disable-secondary-cpu-auto-hotplug-when-s.patch is specific for the GT-I9100 hardware. It always sets the secondary cpu offline when the screen is off.
ChangeLog
v1 -> v2
fix: allow to offline the secondary cpu when screen is on
always disable the secondary cpu when screen is off
Click to expand...
Click to collapse
Hi,
Can you make it also for ninphetamine source code?
netchip said:
Hi,
Can you make it also for ninphetamine source code?
Click to expand...
Click to collapse
All the patches apply fine, except patch 0003, because the ninphetamine kernel already has a 800MHz sleep death fix.
The following patch set should apply cleanly (UNTESTED!!!).
Hi.
Are the minimum and maximum frequencies given by the kernel or given by scripts somewhere on an Android device?
Is it possible to lock the maximum frequency useable by SetCPU to a lower setting than possible by the kernel via a script?
For example an overclocking kernel is used, but a specific device cannot handle overclocked frequencies.
I might be wrong, but I believe hardcoced in kernal
lordofazeroth said:
Hi.
Are the minimum and maximum frequencies given by the kernel or given by scripts somewhere on an Android device?
Is it possible to lock the maximum frequency useable by SetCPU to a lower setting than possible by the kernel via a script?
For example an overclocking kernel is used, but a specific device cannot handle overclocked frequencies.
Click to expand...
Click to collapse
I've completely moved away from apps of any sort to manage voltage, min and max freq, as well as governor behavior and memory optimization. Assuming your kernel supports sysfs, and most custom kernels do, a simply written script will do the job with none of the overhead an app requires. Many kernels already have a script for setting these values and can be edited fairly easily. If you know a little about ADB, creating a whole new one with something like Vim is pretty easy. Then you just push it to /system/etc/init.d and sh it. If you want to edit it on the device, Script Manager works well for that. I have an OC guide in my Q&A thread, second post, that explains some of this in more detail. The link is in my sig.
Hi All..
First lemme give my phone details:
Galaxy S3 International (i9300)
Kernel : Siyah 1.8.9
ROMs (Dual Boot)
: WanamLite v5.5 (based on ZSEMA1)
CM10.1 Nightly
MODS : JKAY framework
My problem is that there is noticeable UI lags when in the homescreen or the app drawer.
I have not overclocked/underclocked the CPU. Have no undervoltage setting as well. In STweaks, the max CPU freq is set to the stock 1400Mhz and the min CPU freq is set to the recommended 200Mhz. And I have kept the "touch boost level" to 1200Mhz.
When I see the UI lags, I used CPU spy to monitor the CPU speeds. What I could see was that the speeds were at the lower end (200 - 800 Mhz) !!! Since the touch boost level is set to 1200, shouldn't the CPU jump to 1200 Mhz when I unlock/touch the screen ? I agree that the CPU speed needn't stay at 1200Mhz after the speed boost, but shouldn't it stay at a freq to ensure that there is no UI lag ?
If the operating freq is at 1400Mhz, the UI is perfect !!! It goes to this state automatically usually (takes a while ), or manually I can make this happen by setting the min CPU freq to say 1300 MHz from STweaks. Once this state is hit, the UI wrks with no lag until say I lock the screen, or maybe the device goes to sleep for a while.
Any ideas as to why the CPU freq stays at lower values and doesn't come up enough to give a lag free UI ?
stanzlavos said:
Hi All..
First lemme give my phone details:
Galaxy S3 International (i9300)
Kernel : Siyah 1.8.9
ROMs (Dual Boot)
: WanamLite v5.5 (based on ZSEMA1)
CM10.1 Nightly
MODS : JKAY framework
My problem is that there is noticeable UI lags when in the homescreen or the app drawer.
I have not overclocked/underclocked the CPU. Have no undervoltage setting as well. In STweaks, the max CPU freq is set to the stock 1400Mhz and the min CPU freq is set to the recommended 200Mhz. And I have kept the "touch boost level" to 1200Mhz.
When I see the UI lags, I used CPU spy to monitor the CPU speeds. What I could see was that the speeds were at the lower end (200 - 800 Mhz) !!! Since the touch boost level is set to 1200, shouldn't the CPU jump to 1200 Mhz when I unlock/touch the screen ? I agree that the CPU speed needn't stay at 1200Mhz after the speed boost, but shouldn't it stay at a freq to ensure that there is no UI lag ?
If the operating freq is at 1400Mhz, the UI is perfect !!! It goes to this state automatically usually (takes a while ), or manually I can make this happen by setting the min CPU freq to say 1300 MHz from STweaks. Once this state is hit, the UI wrks with no lag until say I lock the screen, or maybe the device goes to sleep for a while.
Any ideas as to why the CPU freq stays at lower values and doesn't come up enough to give a lag free UI ?
Click to expand...
Click to collapse
ANNNNNNNNNNNND what rom are you talking about!?! CM10.1 or Samsung? if you want a LAGG FREE phone do the following.
1: OverClock the CPU to 1.6ghz, then set min to 500mhz, use a -25mV or a -50mV
2: Set Governor to LULZACTIVEQ
3: Set MIN GPU freq to 266mhz
4: Set MAX GPU freq to 640mhz
5: Disable "gentle fair sleepers" on the CPU tab
6: Set the SCHEDULER to CFQ
7: Go to settings and enable GPU rendering
and FINALLY if non of the above work, FLASH Null_22.1 for a Samsung ROM. and Revolt, cm10.1, jellybam for a AOSP rom.
IF NON OF THAT WORK'S download super wipe and flash a new phone.
Can I just say, 1200mhz?!?! Default is 800 and I'm using 700 on my device. It's a bit extreme.
Perhaps your governor is affecting smoothness. Try using pegasusq. Or it may be the app your using to change CPU frequency doesn't even have ROOT access
International S III 16GB / CM10.1 / Gokhan's SK
paintball23456 said:
ANNNNNNNNNNNND what rom are you talking about!?! CM10.1 or Samsung? if you want a LAGG FREE phone do the following.
1: OverClock the CPU to 1.6ghz, then set min to 500mhz, use a -25mV or a -50mV
2: Set Governor to LULZACTIVEQ
3: Set MIN GPU freq to 266mhz
4: Set MAX GPU freq to 640mhz
5: Disable "gentle fair sleepers" on the CPU tab
6: Set the SCHEDULER to CFQ
7: Go to settings and enable GPU rendering and disable hardware overlays (resets on boot)
and FINALLY if non of the above work, FLASH Null_22.1 for a Samsung ROM. and Revolt, cm10.1, jellybam for a AOSP rom.
IF NON OF THAT WORK'S download super wipe and flash a new phone.
Click to expand...
Click to collapse
No. Do not disable hardware overlays. That will, if anything, cause your device to lag more.
Theshawty said:
No. Do not disable hardware overlays. That will, if anything, cause your device to lag more.
Click to expand...
Click to collapse
O_O not in my case..
paintball23456 said:
O_O not in my case..
Click to expand...
Click to collapse
This is a quote from a guy over at rootzwiki
Without a hardware overlay every application that is displaying things on the screen will share video memory and will have to constantly check for collision and clipping to render a proper image, this can cost a lot of processing power. With a hardware overlay each application gets its own portion of video memory, getting rid of the need to check for collision and clipping.
Basically, using hardware overlays can reduce CPU usage by quite a bit, so I would leave it enabled.
Click to expand...
Click to collapse
Theshawty said:
This is a quote from a guy over at rootzwiki
Click to expand...
Click to collapse
Right.. then why dafudge is my s3 SMOOTHER with it enabled?
paintball23456 said:
Right.. then why dafudge is my s3 SMOOTHER with it enabled?
Click to expand...
Click to collapse
Maybe you're just lucky, I dunno. It's better to let a real dev share his/her input on this. I'm merely a noob who knows how to Google...
Theshawty said:
Maybe you're just lucky, I dunno. It's better to let a real dev share his/her input on this. I'm merely a noob who knows how to Google...
Click to expand...
Click to collapse
L.O.L but not that big of a noob... thanks for the info - and also reminding me for the 100,000,000,000,000 time to sign up to rootwiki
paintball23456 said:
L.O.L but not that big of a noob... thanks for the info - and also reminding me for the 100,000,000,000,000 time to sign up to rootwiki
Click to expand...
Click to collapse
Heh, maybe not.
Uhm, you're welcome, I guess? :good:
It's probably smoother due to the fact that the CPU will be working at a higher frequency more often. Those that have disabled hardware overlays are causing their CPU to ramp up every time an application has to render an image
paintball23456 said:
ANNNNNNNNNNNND what rom are you talking about!?! CM10.1 or Samsung? if you want a LAGG FREE phone do the following.
1: OverClock the CPU to 1.6ghz, then set min to 500mhz, use a -25mV or a -50mV
2: Set Governor to LULZACTIVEQ
3: Set MIN GPU freq to 266mhz
4: Set MAX GPU freq to 640mhz
5: Disable "gentle fair sleepers" on the CPU tab
6: Set the SCHEDULER to CFQ
7: Go to settings and enable GPU rendering
and FINALLY if non of the above work, FLASH Null_22.1 for a Samsung ROM. and Revolt, cm10.1, jellybam for a AOSP rom.
IF NON OF THAT WORK'S download super wipe and flash a new phone.
Click to expand...
Click to collapse
The lag is more obvious in the Touchwiz based Wanamlite ROM.
1) As i said, when running at 1.4Ghz (with stock voltage settings) itsef the UI is smooth. So I don't actually want to overclock. . The problem is that the CPU speed doesn't rise up and stays between 200-800 causing the lag.
2) Will try changing the governor (first let me read how it is different from pegasusq ).
3,4) Again, with stock settings itself the UI is smooth. The problem is what i have said under point 1.
5) Already done.
6) WIll try setting scheduler to CFQ (again, lemme read bout it first )
7) GPU rendering is already ticketd. Hardware overlays are not disabled (thought this would increase the lag).
Is NULL_22.1 a Touchwiz based ROM ? And Jelybam is an AOKP ROM I supose ?
Wouldn't want to do the last option.
Also, I saw that you have mentioned three ROMs in your signature. Siyah lets you dual boot right, how come 3 ? Or were you just talking about your preference ?
And, does siyah 1.8.9 for the S3 let us boot with NULL_22.1 and jellybam in dual boot? Are all these combos possible ?
Sammy + CM10.1 (this works, I knw )
Sammy + AOKP
AOKP + CM10.1
raminica seemed
23Six said:
Can I just say, 1200mhz?!?! Default is 800 and I'm using 700 on my device. It's a bit extreme.
Perhaps your governor is affecting smoothness. Try using pegasusq. Or it may be the app your using to change CPU frequency doesn't even have ROOT access
International S III 16GB / CM10.1 / Gokhan's SK
Click to expand...
Click to collapse
From what I understood, it just boosts upto 1200Mhz on touch and needn't stay there. Right ? The only downside there is battery life I suppose ?
Am already using pegasusq and yes, sTweaks does have root access.
Hi everybody
What should I edit to set custom values in nik3r's EPS toggle for CPU max freq and max number of core allowed?
I'd like to set max freq at 1ghz, 2 cores allowed. I tried manually and it goes fine for light use.
Thanks
ciuss said:
Hi everybody
What should I edit to set custom values in nik3r's EPS toggle for CPU max freq and max number of core allowed?
I'd like to set max freq at 1ghz, 2 cores allowed. I tried manually and it goes fine for light use.
Thanks
Click to expand...
Click to collapse
i think it's not possible to change this, because it is defined in kernel source code.
Ok so there is no way even adding something to userinit.sh?
ciuss said:
Ok so there is no way even adding something to userinit.sh?
Click to expand...
Click to collapse
nope. you can only get a cpu app with possibility to add profiles and make one for powersaving, but then there's no use for nik3rs EPS toggle
reaper90 said:
nope. you can only get a cpu app with possibility to add profiles and make one for powersaving, but then there's no use for nik3rs EPS toggle
Click to expand...
Click to collapse
Ok thank you!