Thomas Renninger | 1 Sep 16:50 2005
Picon

Re: Battery life: SuSE 9.3 vs Windows XP

Stefan Seyfried wrote:
> Mark Hellman wrote:
> 
>>Relevant hardware:
>>   - Pentium M 1.6 Ghz
>>   - ATI Mobility Radeon 9200
> 
> Anton already commented on the GFX-card possibilities
> 
>>Battery Life on SuSE: 3h50
>>Battery Life on Windows: 5h30
>>
>>So does anyone have an explanation for this huge battery life difference?
> 
> try
> cat /proc/acpi/processor/*/power
> to find out the maximum supported C-State. If it is only C2, this may be
> a problem with your DSDT which is worked around in Windows by specially
> crafted drivers.

I also think this is mainly because of C-states.
Would be interessting to know:

    - what C-states are supported by the machine (C3/C4) (see above)
    - what HZ the machine is running (cat >/proc/sys/kernel/HZ)
      -> I expect it's 1000, unfortunately a new value must be compiled
      into the kernel (this is in very new kernels (2.6.12/13?) now be configurable via .config
      If you are interessted in you could try to with 100 or 250 as HZ default value, I could
      imagine you will save more than 10 mintues.

(Continue reading)

Mark Hellman | 1 Sep 20:24 2005

Re: Battery life: SuSE 9.3 vs Windows XP

Anton Farygin wrote:

> Also, if driver is radeon, then may be help this option in xorg.conf:
>        Option "DynamicClocks" "boolean"
>               Enable  dynamic  clock  scaling.   The on-chip clocks will
>               scale
>               dynamically based on  usage.  This  can  help  reduce  heat 
>               and
>               increase  battery  life  by  reducing  power  usage.  Some
>               users
>               report reduced 3D preformance with this enabled.  The
>               default is off.

A tried your suggestion, but there was hardly any battery life improvement
in the type of experiment I have done.

I made the same experiment on another laptop (Intel Celeron based), and the
battery life of Windows XP and SuSE 9.3 was exacly the same. So the
discrepancy I measured on the Pentium M laptop remains a mistery to me...

Mark
Thomas Renninger | 2 Sep 08:43 2005
Picon

Re: Re: Battery life: SuSE 9.3 vs Windows XP

Mark Hellman wrote:
> Anton Farygin wrote:
> 
>>Also, if driver is radeon, then may be help this option in xorg.conf:
>>       Option "DynamicClocks" "boolean"
>>              Enable  dynamic  clock  scaling.   The on-chip clocks will
>>              scale
>>              dynamically based on  usage.  This  can  help  reduce  heat 
>>              and
>>              increase  battery  life  by  reducing  power  usage.  Some
>>              users
>>              report reduced 3D preformance with this enabled.  The
>>              default is off.
> 
> A tried your suggestion, but there was hardly any battery life improvement
> in the type of experiment I have done.
> 
> I made the same experiment on another laptop (Intel Celeron based), and the
> battery life of Windows XP and SuSE 9.3 was exacly the same. So the
> discrepancy I measured on the Pentium M laptop remains a mistery to me...
> 
> 
That's very interessting.
Could you please compare the supported C-states on the machines. I bet it is
related to those.
Please also have a look at "cat /proc/sys/kernel/HZ".

Theoretically it could also be throttling, but I doubt it:
cat /proc/acpi/processor/*/throttling  or powersave -T
You could increase allowed throttling, if the machine is idle using the powersave
(Continue reading)

Anton Farygin | 2 Sep 15:24 2005

inline functions from daemon/cpufreq.cpp

Hello, 

i compile current powersave CVS (HEAD) for ALT Linux Sisyphus and see
error (gcc 3.4):
g++ -Wall -DHAVE_SYSLOG_H -DDEBUG -g -O2 -o .libs/powersaved acpi.o apm.o config_pm.o cpufreq.o
cpufreq_userspace.o cpufreq_kernel.o event.o general_config.o powersaved.o scheme_config.o
clientConnection.o event_management.o stringutil.o dbus_server.o brightness.o 
../libpower/.libs/libpowersave.so ../libpower/.libs/libpowersave_clientsocket.so
../libpower/.libs/libpowersave_dbus.so -Wl,--rpath -Wl,/usr/local/lib
cpufreq_userspace.o(.text+0x24f): In function `CPUFreq_Userspace::initFreqsViaFile()':
/usr/lib/gcc/i586-alt-linux/3.4.4/../../../../include/c++/3.4.4/bits/basic_string.h:1456:
undefined reference to `read_line(char const*, char*, unsigned int)'

After moving inline functions body to cpufreq.h - powersave daemon
compliled without a errors.

This is correct ?

Rgds,
Anton Farygin
ALT Linux
Danny Kukawka | 2 Sep 15:59 2005
Picon

Re: inline functions from daemon/cpufreq.cpp

On Friday 02 September 2005 15:24, Anton Farygin wrote:
> i compile current powersave CVS (HEAD) for ALT Linux Sisyphus and see
> error (gcc 3.4):
> g++ -Wall -DHAVE_SYSLOG_H -DDEBUG -g -O2 -o .libs/powersaved acpi.o apm.o
> config_pm.o cpufreq.o cpufreq_userspace.o cpufreq_kernel.o event.o
> general_config.o powersaved.o scheme_config.o clientConnection.o
> event_management.o stringutil.o dbus_server.o brightness.o 
> ../libpower/.libs/libpowersave.so
> ../libpower/.libs/libpowersave_clientsocket.so
> ../libpower/.libs/libpowersave_dbus.so -Wl,--rpath -Wl,/usr/local/lib
> cpufreq_userspace.o(.text+0x24f): In function
> `CPUFreq_Userspace::initFreqsViaFile()':
> /usr/lib/gcc/i586-alt-linux/3.4.4/../../../../include/c++/3.4.4/bits/basic_
>string.h:1456: undefined reference to `read_line(char const*, char*,
> unsigned int)'
>
> After moving inline functions body to cpufreq.h - powersave daemon
> compliled without a errors.
>
> This is correct ?

Which state of the CVS? Did the CVS from tag VERSION_10_10_0 works for you? If 
not, pleas send a patch with the changes. Thanks.

Cheers,

Danny

ps: current packages are available for powersave and KPowersave: 
http://sourceforge.net/projects/powersave/
(Continue reading)

Anton Farygin | 2 Sep 16:15 2005

Re: inline functions from daemon/cpufreq.cpp

On Fri, 02 Sep 2005 15:59:08 +0200, Danny Kukawka wrote:

> On Friday 02 September 2005 15:24, Anton Farygin wrote:
>> i compile current powersave CVS (HEAD) for ALT Linux Sisyphus and see
>> error (gcc 3.4):
>> g++ -Wall -DHAVE_SYSLOG_H -DDEBUG -g -O2 -o .libs/powersaved acpi.o
>> apm.o config_pm.o cpufreq.o cpufreq_userspace.o cpufreq_kernel.o event.o
>> general_config.o powersaved.o scheme_config.o clientConnection.o
>> event_management.o stringutil.o dbus_server.o brightness.o
>> ../libpower/.libs/libpowersave.so
>> ../libpower/.libs/libpowersave_clientsocket.so
>> ../libpower/.libs/libpowersave_dbus.so -Wl,--rpath -Wl,/usr/local/lib
>> cpufreq_userspace.o(.text+0x24f): In function
>> `CPUFreq_Userspace::initFreqsViaFile()':
>> /usr/lib/gcc/i586-alt-linux/3.4.4/../../../../include/c++/3.4.4/bits/basic_
>>string.h:1456: undefined reference to `read_line(char const*, char*,
>> unsigned int)'
>>
>> After moving inline functions body to cpufreq.h - powersave daemon
>> compliled without a errors.
>>
>> This is correct ?
> 
> Which state of the CVS? 

HEAD

> Did the CVS from tag VERSION_10_10_0 works for
> you? If not, pleas send a patch with the changes. Thanks.

(Continue reading)

Thomas Renninger | 2 Sep 16:41 2005
Picon

Re: Re: inline functions from daemon/cpufreq.cpp

Anton Farygin wrote:
> On Fri, 02 Sep 2005 15:59:08 +0200, Danny Kukawka wrote:
> 
>> On Friday 02 September 2005 15:24, Anton Farygin wrote:
>>> i compile current powersave CVS (HEAD) for ALT Linux Sisyphus and see
>>> error (gcc 3.4):
>>> g++ -Wall -DHAVE_SYSLOG_H -DDEBUG -g -O2 -o .libs/powersaved acpi.o
>>> apm.o config_pm.o cpufreq.o cpufreq_userspace.o cpufreq_kernel.o event.o
>>> general_config.o powersaved.o scheme_config.o clientConnection.o
>>> event_management.o stringutil.o dbus_server.o brightness.o
>>> ../libpower/.libs/libpowersave.so
>>> ../libpower/.libs/libpowersave_clientsocket.so
>>> ../libpower/.libs/libpowersave_dbus.so -Wl,--rpath -Wl,/usr/local/lib
>>> cpufreq_userspace.o(.text+0x24f): In function
>>> `CPUFreq_Userspace::initFreqsViaFile()':
>>> /usr/lib/gcc/i586-alt-linux/3.4.4/../../../../include/c++/3.4.4/bits/basic_
>>> string.h:1456: undefined reference to `read_line(char const*, char*,
>>> unsigned int)'
>>>
>>> After moving inline functions body to cpufreq.h - powersave daemon
>>> compliled without a errors.
>>>
>>> This is correct ?
>> Which state of the CVS? 
> 
> HEAD
> 
>> Did the CVS from tag VERSION_10_10_0 works for
>> you? If not, pleas send a patch with the changes. Thanks.
> 
(Continue reading)

Anton Farygin | 2 Sep 16:52 2005

Re: inline functions from daemon/cpufreq.cpp

Thomas Renninger wrote:
> Anton Farygin wrote:
> 
>> On Fri, 02 Sep 2005 15:59:08 +0200, Danny Kukawka wrote:
>>
>>> On Friday 02 September 2005 15:24, Anton Farygin wrote:
>>>
>>>> i compile current powersave CVS (HEAD) for ALT Linux Sisyphus and see
>>>> error (gcc 3.4):
>>>> g++ -Wall -DHAVE_SYSLOG_H -DDEBUG -g -O2 -o .libs/powersaved acpi.o
>>>> apm.o config_pm.o cpufreq.o cpufreq_userspace.o cpufreq_kernel.o 
>>>> event.o
>>>> general_config.o powersaved.o scheme_config.o clientConnection.o
>>>> event_management.o stringutil.o dbus_server.o brightness.o
>>>> ../libpower/.libs/libpowersave.so
>>>> ../libpower/.libs/libpowersave_clientsocket.so
>>>> ../libpower/.libs/libpowersave_dbus.so -Wl,--rpath -Wl,/usr/local/lib
>>>> cpufreq_userspace.o(.text+0x24f): In function
>>>> `CPUFreq_Userspace::initFreqsViaFile()':
>>>> /usr/lib/gcc/i586-alt-linux/3.4.4/../../../../include/c++/3.4.4/bits/basic_ 
>>>>
>>>> string.h:1456: undefined reference to `read_line(char const*, char*,
>>>> unsigned int)'
>>>>
>>>> After moving inline functions body to cpufreq.h - powersave daemon
>>>> compliled without a errors.
>>>>
>>>> This is correct ?
>>>
>>> Which state of the CVS? 
(Continue reading)

Danny Kukawka | 2 Sep 18:32 2005
Picon

Re: Re: inline functions from daemon/cpufreq.cpp

On Friday 02 September 2005 16:52, Anton Farygin wrote:
> >>>> This is correct ?

I'm not sure if this is correct to move the code from cpp to header file. I 
think we should remove the inline definition and use normal functions instead 
of inline.

Inline is a replacement for time critical macros and this is also only a 
proposal for the compiler. I didn't take a deeper look in the code. Don't see 
currently a reason why not use a normal function here.

> >>> Which state of the CVS?
> >>
> >> HEAD
> >>
> >>> Did the CVS from tag VERSION_10_10_0 works for
> >>> you? If not, pleas send a patch with the changes. Thanks.
> >>
> >> may be VERSION_0_10_10 ?
> >>
> >> Permissions denied for anonymous :-(
> >>
> >> $ cvs up -rVERSION_0_10_10
> >> Password: cvs [server aborted]: cannot write
> >> /cvsroot/powersave/CVSROOT/val-tags: Permission denied
> >
> > What the ... is that?
> > Anonymous user cannot checkout TAGS?

Not needed too assign a bug. This need to long until a fix is there. ;) We 
(Continue reading)

Anton Farygin | 2 Sep 20:09 2005

Re: Re: inline functions from daemon/cpufreq.cpp

On Fri, 02 Sep 2005 18:32:42 +0200, Danny Kukawka wrote:

> On Friday 02 September 2005 16:52, Anton Farygin wrote:
>> >>>> This is correct ?
> 
> I'm not sure if this is correct to move the code from cpp to header file.
> I think we should remove the inline definition and use normal functions
> instead of inline.

Why not. Removal inline looks good for me.

> 
> Inline is a replacement for time critical macros and this is also only a
> proposal for the compiler. I didn't take a deeper look in the code. Don't
> see currently a reason why not use a normal function here.
> 
>> >>> Which state of the CVS?
>> >>
>> >> HEAD
>> >>
>> >>> Did the CVS from tag VERSION_10_10_0 works for you? If not, pleas
>> >>> send a patch with the changes. Thanks.
>> >>
>> >> may be VERSION_0_10_10 ?
>> >>
>> >> Permissions denied for anonymous :-(
>> >>
>> >> $ cvs up -rVERSION_0_10_10
>> >> Password: cvs [server aborted]: cannot write
>> >> /cvsroot/powersave/CVSROOT/val-tags: Permission denied
(Continue reading)


Gmane