After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 340355 - Need "Minimize power usage" setting
Need "Minimize power usage" setting
Status: RESOLVED FIXED
Product: gnome-power-manager
Classification: Deprecated
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: GNOME Power Manager Maintainer(s)
GNOME Power Manager Maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2006-05-02 00:02 UTC by David Zeuthen (not reading bugmail)
Modified: 2006-06-18 14:56 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description David Zeuthen (not reading bugmail) 2006-05-02 00:02:45 UTC
The world would be better off if computers didn't use a lot of energy so even when on AC the user should have an option to aggresively save a lot of energy by sacrificing performance. On the other hand, most users wants as much performance as possible when running on AC. Finally, some users wants top performance even on batteries. Hence, it makes sense for the user to configure this in the UI. I think it would be fair.

Here's an idea to achieve that

 1. The user gets a new option

    [ ] Sacrifice performance for power savings
    (might want to reword it, English is not my native tongue)

    in both the AC, Battery and UPS tabs. By default it's checked in the
    Battery and UPS tabs but not in the AC tab.

 2. g-p-m gets new stuff on the session bus

    method: bool shouldSacrificePerformance()
    signal: shouldSacrificePerformanceChanged(bool value)
    
  and applications such as NetworkManager's GNOME bits (less 
  aggressive scanning, lower radio stuff), Totem (select less CPU
  hungry codec) etc. can use this _if_ they like.

 3. Implementation-wise, for the system stuff, g-p-m calls setLowPower()
    on HAL with the appropriate value.


Btw, it would also benefit users using these kind of extra batteries

 http://www.sps-ltd.com/product/external/max90/max90.htm

since they would choose to sacrifice performance for less energy consumption even when the computer "thinks" it's plugged in. 

For reference, see 

 http://lists.freedesktop.org/archives/pm-utils/2006-May/000087.html
Comment 1 David Zeuthen (not reading bugmail) 2006-05-02 00:22:50 UTC
While thinking about this, we should remove

 method: bool getOnAc()
 signal: onAcChanged(bool value)

as applications should move to the new interface described above.
Comment 2 David Zeuthen (not reading bugmail) 2006-05-02 00:42:32 UTC
See also 

 http://lists.freedesktop.org/archives/pm-utils/2006-May/000089.html

for some more UI suggestions (dialog and option in tray icon) as well as

 http://lists.freedesktop.org/archives/pm-utils/2006-May/000088.html

for some more rationale.
Comment 3 David Zeuthen (not reading bugmail) 2006-05-02 01:08:22 UTC
Kay Sievers also remarked to me in a chat session that one reason for "sacrificing performance for energy savings" is to prevent the noisy fans for starting...
Comment 4 Richard Hughes 2006-05-02 07:14:30 UTC
Yes, this is a good idea, and lots better thank just blindly using lowpowermode when we use battery power.

We're going to need:

/apps/gnome-power-manager/use_lowpower_ac (default off)
/apps/gnome-power-manager/use_lowpower_ups (default on)
/apps/gnome-power-manager/use_lowpower_battery (default on)

I'm not sure sacrifice is a good word, due the thoughts about death and ritual killing... Maybe a simple prefer might be better:

In all three state tabs in the preferences:

[x] Prefer power savings over performance (or)
[x] Prefer performance over power savings

Plus the dropdown menu element:

[x] Power saving

The dbus stuff:

runtimePowerSave(bool)

Plus some stuff in yelp explaining it all.

That sound good? Feel free to argue about names and stuff.

Richard.
Comment 5 Richard Hughes 2006-05-02 12:33:22 UTC
I had a spare 30 minutes:

2006-05-02  Richard Hughes  <richard@hughsie.com>
 * data/gnome-power-manager.schemas.in, src/gpm-prefs.h: Add the /apps/gnome-power-manager/use_lowpower_{ac|ups|battery} keys.
 * data/gpm-prefs.glade: Add the checkboxes to enable the lowpower mode checkboxes.
 * src/gpm-prefs-core.c (setup_ac_actions, setup_battery_actions, setup_ups_actions): Support the new checkboxes and tie the values into gconf keys. Starting to work towards a fix for #340355.  * src/gpm-prefs-core.c (gpm_prefs_init): Use gconf_key_changed_cb() to act on gconf keys changing outside of g-p-p. Should help out the Ubuntu guys with their modifications also.

It's not hooked into the GpmManager stuff yet, it only sets the right gconf keys and is exposed in the UI.

Richard.
Comment 6 Richard Hughes 2006-05-14 16:38:29 UTC
2006-05-05  Richard Hughes  <richard@hughsie.com>

	* src/gpm-manager.c: (change_power_policy): Respect the user policy
	enabling low power mode when required.

Can you check cvs pls, and tell me if everything looks okay. Thanks.
Comment 7 Richard Hughes 2006-06-18 14:56:00 UTC
2006-06-18  Richard Hughes  <richard@hughsie.com>

	* docs/dbus-interface.xml:
	* docs/gnome-power-manager.html:
	* src/gpm-manager.c:
	* src/gpm-manager.h:
	* src/gpm-manager.xml:
	Add gpm_manager_get_low_power_mode and the dbus method GetLowPowerMode
	for #340355. Still need to do the signal, but that needs some more
	refactoring of the state code.