Notices


Reply
Thread Tools
direx's Avatar
Posts: 102 | Thanked: 153 times | Joined on Feb 2010
#1
QCPUFreq

QCPUFreq is a GUI for the kernel's cpufreq interface. It allows you to adjust your CPU's maximum speed.
This prevents the CPU from working at full speed when you don't need it (e.g when running emulators) which enables you to save more battery power.

It should work with vanilla and custom kernels so both normal users and overclockers could benefit from the application.

If you are using a power kernel you can also use QCPUFreq for overclocking!

Maintainer wanted

Requirements:
  • N900 with at least PR 1.2
  • no dependencies

Features:
  • finger-friendly UI
  • completely "optified"
  • portrait mode support (kinda useless, but hey: "portrait mode on the N900" )
  • support for overclocking and underclocking
  • support for saving current settings as default (only on power kernel)
  • support for loading voltage presets (only on power kernel, extras-devel version)

When you can expect to save power:
  • Running games/emulators which cause your CPU to run at full speed when it is really not required
  • SmartReflex should save a little power in all cases

Known limitations:
  • Maximum frequency reverts to default after:
    • rebooting the device
    • making or recieving a call
  • Settings are lost after reboot - this is intentional so users do not screw up their device. If you are using a power kernel you can however save your settings in the QCPUFreq menu.
  • On vanilla kernels the temperature may be inaccurate
  • Setting the frequency to the lowest value (250 MHz on vanilla kernel) causes the scaling governor to scale up to the second scaling step (500 MHz on vanilla kernel).
  • Sometimes the CPU frequency jumps above the maximum frequency defined in QCPUFreq. The scaling governor will eventuelly notice it (after ~1 sec.) and lower the frequency again. This is a kernel issue and QCPUFreq does not have any influence on this behavior.

I'd appreciate any user input

Screenshot:




Download:
Get QCPUFreq from extras-testing.

Last edited by direx; 2011-12-02 at 14:25.
 

The Following 53 Users Say Thank You to direx For This Useful Post:
chemist's Avatar
Administrator | Posts: 1,036 | Thanked: 2,019 times | Joined on Sep 2009 @ Germany
#2
Please don't get me wrong but where is the point in limiting the maximum frequency? Improving the CPU scaling management would be much better than having someone decide by himself... to give you a reasonable example, 12 cycles with scaling from 250 to 500MHz@100% do use more power than scaling from 250 to 600MHz@100% for 10 cycles so why limit it to 500MHz? I don't know what is the exact case but steps need to be reasonable and not feeling well. To run a CPU at less frequency is only a good idea to save power as long as there is no higher frequency available that uses less power for the same work.
 

The Following 2 Users Say Thank You to chemist For This Useful Post:
BLIZZARD's Avatar
Posts: 194 | Thanked: 266 times | Joined on May 2010
#3
I find that app very helpfull and thanks a lot for creating it, keeping n900 at 600mhz kills the cpu, i would like to test it with emulators that always run on 600mhz.
__________________
I LOVE THESE GAMES: STARCRAFT/STARCRAFT2
I LOVE N900 I LOVE C++ I LOVE UBUNTU
E.F.F, (QT) E.F.F EMPTY FREQUENCIES FINDER, CRAPS, T-CONTROL
 
direx's Avatar
Posts: 102 | Thanked: 153 times | Joined on Feb 2010
#4
Originally Posted by chemist View Post
to give you a reasonable example, 12 cycles with scaling from 250 to 500MHz@100% do use more power than scaling from 250 to 600MHz@100% for 10 cycles so why limit it to 500MHz?
I agree with you that limiting the maximum frequency is not always the best choice - especially when you really need computing power.

But as BLIZZARD pointed out correctly there are many apps which cause frequency upscaling to 600MHz when it is really not necessary (which is the case with many games).
And since CMOS power consumption is linear to the frequency you can certainly save battery power in such cases (always on 500MHz is better than always on 600MHz).

Of course it would be desirable to improve the actual frequency scaling code itself, but I do not have the time to deal with kernel-level stuff and I also want to stick with vanilla kernels.

BTW: overclockers might like this app in the summer. When it's 35C outside they probably don't want their N900s running at 1.3 GHz


- Dan
 

The Following 2 Users Say Thank You to direx For This Useful Post:
Posts: 67 | Thanked: 15 times | Joined on Apr 2010
#5
It doesn't kill the CPU.. I have been playing OpenDune on my N900 for like 24 hours the last 14 days, always keeping the CPU at 900MHz, no problems..

The CPU is being worn out faster yes... But that should'nt be a problem unless you want your N900 to live for +2-3 years.
__________________
--
 
direx's Avatar
Posts: 102 | Thanked: 153 times | Joined on Feb 2010
#6
QCPUFreq 0.2 is now available in extras-testing. I would appreciate any suggestions and comments.

Testers welcome!
 

The Following User Says Thank You to direx For This Useful Post:
Flandry's Avatar
Posts: 1,559 | Thanked: 1,786 times | Joined on Oct 2009 @ Boston
#7
For those interested in the premise of this utility, you can save a lot more power by undervolting and it's very easy to do so.

http://wiki.maemo.org/Kernel_Power

If you use the "Ideal" profile and find it stable on your device, you can combine it with this app (or just set the frequencies yourself) for much more significant power saving.
__________________

Unofficial PR1.3/Meego 1.1 FAQ

***
Classic example of arbitrary Nokia decision making. Couldn't just fallback to the no brainer of tagging with lat/lon if network isn't accessible, could you Nokia?
MAME: an arcade in your pocket
Accelemymote: make your accelerometer more joy-ful
 

The Following 5 Users Say Thank You to Flandry For This Useful Post:
Posts: 176 | Thanked: 59 times | Joined on Mar 2010
#8
Flandry, sounds as though you are speaking from personal experience.....I'm keen to try this (time to dip toes into the overclocking waters methinks).

Care to quantify your power savings ?
 
Flandry's Avatar
Posts: 1,559 | Thanked: 1,786 times | Joined on Oct 2009 @ Boston
#9
Originally Posted by SallyJane View Post
Flandry, sounds as though you are speaking from personal experience.....I'm keen to try this (time to dip toes into the overclocking waters methinks).

Care to quantify your power savings ?
Well, you called my bluff. I have only theoretical numbers but in principle lowering the voltage can save a lot more power than underclocking because it's a quadratic vs. linear effect--and you don't give up any performance. The only limitation is the CPU/SoC of your N900, which means a (very) small risk of needing to flash and restore a backup if your FS gets corrupted while you test. It seems like the vast majority of N900s can handle Ideal.

My goal was to overclock while keeping within the power envelope of the stock settings. By using Ideal settings and changing the min and max to 250 and 810, i was able to do that. At all clock speeds except 810 MHz the CPU power consumption is less than with stock settings at 600. If i decrease the max to 600, it's only 63% stock at 600. At 500 MHz, Ideal settings have 66% the dynamic power of stock.

I used numbers from this: http://wiki.maemo.org/Overclocking

Note that i don't expect the method in this thread nor undervolting to make a significant difference in overall N900 battery life unless the user is regularly pegging the CPU at max (emulators, mostly): the radios, screen, etc. all consume power, too.
__________________

Unofficial PR1.3/Meego 1.1 FAQ

***
Classic example of arbitrary Nokia decision making. Couldn't just fallback to the no brainer of tagging with lat/lon if network isn't accessible, could you Nokia?
MAME: an arcade in your pocket
Accelemymote: make your accelerometer more joy-ful

Last edited by Flandry; 2010-06-23 at 21:24.
 

The Following User Says Thank You to Flandry For This Useful Post:
Bec's Avatar
Posts: 876 | Thanked: 396 times | Joined on Dec 2009
#10
Adding an oveclocking option would be evn more usefull. I don't see a point inhaving an underclocking setting only.

And as Flandry said, undervolting rocks . I undervolted my laptop with no issues so perhaps adding, in later versions the ability to set voltages for every 50mhz would rock.
__________________
 
Reply


 
Forum Jump


All times are GMT. The time now is 05:03.