maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Applications (https://talk.maemo.org/forumdisplay.php?f=41)
-   -   [Announce] QCPUFreq - modify your maximum CPU speed (https://talk.maemo.org/showthread.php?t=56757)

direx 2010-06-21 14:50

[Announce] QCPUFreq - modify your maximum CPU speed
 
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:
http://a.imageshack.us/img214/9153/s...0080114184.png



Download:
Get QCPUFreq from extras-testing.

chemist 2010-06-22 10:03

Re: [Announce] QCPUFreq - save battery power by adjusting your maximum CPU speed
 
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.

BLIZZARD 2010-06-22 10:14

Re: [Announce] QCPUFreq - save battery power by adjusting your maximum CPU speed
 
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.

direx 2010-06-22 12:05

Re: [Announce] QCPUFreq - save battery power by adjusting your maximum CPU speed
 
Quote:

Originally Posted by chemist (Post 724719)
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

haj 2010-06-22 12:08

Re: [Announce] QCPUFreq - save battery power by adjusting your maximum CPU speed
 
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 2010-06-23 15:50

Re: [Announce] QCPUFreq - save battery power by adjusting your maximum CPU speed
 
QCPUFreq 0.2 is now available in extras-testing. I would appreciate any suggestions and comments.

Testers welcome!

Flandry 2010-06-23 16:18

Re: [Announce] QCPUFreq - save battery power by adjusting your maximum CPU speed
 
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.

SallyJane 2010-06-23 19:29

Re: [Announce] QCPUFreq - save battery power by adjusting your maximum CPU speed
 
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 2010-06-23 21:22

Re: [Announce] QCPUFreq - save battery power by adjusting your maximum CPU speed
 
Quote:

Originally Posted by SallyJane (Post 726739)
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.

Bec 2010-06-24 11:37

Re: [Announce] QCPUFreq - save battery power by adjusting your maximum CPU speed
 
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 :p. I undervolted my laptop with no issues so perhaps adding, in later versions the ability to set voltages for every 50mhz would rock.


All times are GMT. The time now is 15:44.

vBulletin® Version 3.8.8