On 26/03/2015 14:22, Kevin Oberman wrote:
On Wed, Mar 25, 2015 at 6:37 PM, Da Rock <[email protected] <mailto:[email protected]>> wrote:

    On 03/25/15 09:52, Kevin Oberman wrote:
    On Tue, Mar 24, 2015 at 3:23 AM, Da Rock
    <[email protected]
    <mailto:[email protected]>> wrote:

        I have 2 laptops as mentioned, 3 all amd athlon based. The
        3rd is an asus which I'm relatively happy with.

        What I have is when I pull the AC out of it, the sysctl for
        cpu speed goes from 2200 to 100 or 400. Basically the system
        becomes rather unusable.

        I tried the acpi_hp module, and it now switches to 800. This
        is better, but barely usable still.

        I'd like to see a response similar to the asus if its
        possible; this effectively stays the same, but drops speed if
        nothing is happening.

        Ideally, I'd think that it would be better if the system
        adjusted speed to use requirements during operation, but
        neither does that. I suspect that the asus should (in theory)
        as it does do it on battery only; but unless I'm really
        hammering all the time, it just doesn't seem to happen when
        I'm looking at it.

        The settings used on all for powerd is hiadaptive for AC,
        adaptive for battery.

        If I'm doing something wrong let me know, if more data is
        required I'm happy to help the cause :)

        TIA

    First, let's get a bit more information. Please provide:
    sysctl dev.cpu.0 (on AC and then on battery)
    AC:

    dev.cpu.0.%desc: ACPI CPU
    dev.cpu.0.%driver: cpu
    dev.cpu.0.%location: handle=\_PR_.C000
    dev.cpu.0.%pnpinfo: _HID=none _UID=0
    dev.cpu.0.%parent: acpi0
    dev.cpu.0.temperature: 85.3C
    dev.cpu.0.freq: 200
    dev.cpu.0.freq_levels: 2200/7543 1925/6600 1900/6150 1662/5381
    1600/4777 1400/4179 1300/3750 1137/3281 975/2812 800/2091 700/1829
    600/1568 500/1306 400/1045 300/784 200/522 100/261
    dev.cpu.0.cx_supported: C1/1/0
    dev.cpu.0.cx_lowest: C1
    dev.cpu.0.cx_usage: 100.00% last 682us

    Battery:

    dev.cpu.0.%desc: ACPI CPU
    dev.cpu.0.%driver: cpu
    dev.cpu.0.%location: handle=\_PR_.C000
    dev.cpu.0.%pnpinfo: _HID=none _UID=0
    dev.cpu.0.%parent: acpi0
    dev.cpu.0.temperature: 85.5C
    dev.cpu.0.freq: 100
    dev.cpu.0.freq_levels: 2200/7543 1925/6600 1900/6150 1662/5381
    1600/4777 1400/4179 1300/3750 1137/3281 975/2812 800/2091 700/1829
    600/1568 500/1306 400/1045 300/784 200/522 100/261
    dev.cpu.0.cx_supported: C1/1/0
    dev.cpu.0.cx_lowest: C1
    dev.cpu.0.cx_usage: 100.00% last 901us
    uname -a
    FreeBSD laptop1 10.0-RELEASE-p7 FreeBSD 10.0-RELEASE-p7 #0: Tue
    Jul  8 06:37:44 UTC 2014
    [email protected]:/usr/obj/usr/src/sys/GENERIC
    <mailto:[email protected]:/usr/obj/usr/src/sys/GENERIC>
    amd64
    /etc/sysctl.conf (If present)
    vfs.usermount=1
    kern.ipc.shm_allow_removed=1
    compat.linux.osrelease=2.6.18
    /boot/loader.conf (if present)
    (like it wasn't going to be present :D who doesn't?)
    vboxdrv_load=YES
    tmpfs_load=YES
    cuse4bsd_load=YES
    acpi_video_load=YES
    amdtemp_load=YES
    fuse_load=YES
    acpi_hp_load=YES

    I'd like to get this system running nicely if I can - its been
    just getting there for too long now because of other projects
    taking my attention and I've got bite the bullet and work this out.

    BTW, just to make a liar out of me after I sent that post, the
    system did start to change the cpu speed on AC - but it took a
    while. I had sat there monitoring the system with little activity
    and it remained at 2200; when I gave up waiting and sent that post
    I then started to really give it to it and the speed started
    dropping and rising a little. However, given I was trying to do an
    encoding with ffmpeg at the time, the speed probably should have
    remained at 2200 as my frames encoded per second was about half of
    normal. So I don't really know what to expect :)

    This is also in my dmesg:

    amdtemp0: <AMD CPU On-Die Thermal Sensors> on hostb4
    acpi_acad0: <AC Adapter> on acpi0
    battery0: <ACPI Control Method Battery> on acpi0
    acpi_lid0: <Control Method Lid Switch> on acpi0
    acpi_wmi0: <ACPI-WMI mapping> on acpi0
    acpi_hp0: <HP ACPI-WMI Mapping> on acpi_wmi0
    acpi_hp0: HP event GUID detected, installing event handler
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Field [D128] at 1040 exceeds Buffer [NULL] size 160
    (bits) (20130823/dsopcode-249)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.HWMC]
    (Node 0xfffff80004372e80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    ACPI Error: Method parse/execution failed [\134_SB_.WMID.WMAD]
    (Node 0xfffff80004372b80), AE_AML_BUFFER_LIMIT (20130823/psparse-553)
    acpi_tz0: <Thermal Zone> on acpi0
    acpi_tz0: _CRT value is absurd, ignored (-273.2C)

I should have clarified this before - can someone tell me what all this means? Can I do anything about it?


    cat wmistat0:

    GUID                                  INST EXPE METH STR EVENT OID
    {5FB7F034-2C63-45E9-BE91-3D44E2C707E4}   1 NO   WMAD NO NO    AD
    {95F24279-4D7B-4334-9387-ACCDC67EF61C}   1 NO   NO   NO 0x80+ -
    {05901221-D566-11D1-B2F0-00A0C9062910}   1 NO   NO   NO NO    AE
    {D0992BD4-A47C-4EFE-B072-324AEC92296C}   1 NO   NO   NO NO    BC

    What do I do now?

    TIA


First, I suggest checking the output of kldstat to see that acpi_wmi.ko is loaded.
See just above; that device is set with the module, and the module is loaded with acpi_hp. Check:

kldstat:

8    1 0xffffffff8189f000 83c0     acpi_hp.ko
 9    2 0xffffffff818a8000 7e10     acpi_wmi.ko
If not, add acpi_wmi_load=YES to loader.conf. wmi is an HP/Acer thing and I really don't know much about it. Do you have powerd variables in rc.conf? I assume you have powerd_enable="YES", but are you setting any flags?
Flags as initially provided in OP: hiadaptive on AC, adaptive on battery.

I see that you are using P4TCC. (This is default in 10, but will finally be fixed in 11.) You can turn it off by adding:
hint.p4tcc.0.disabled=1
hint.acpi_throttle.0.disabled=1
to loader.conf. It will remove a bunch of useless "frequencies" and leave the useful values. It will make powerd much more responsive and will prevent C-states from locking up the system when they are enabled. I'd also suggest setting:
performance_cx_lowest="Cmax"
economy_cx_lowest="Cmax"
as C-states are by far and away the best power saving tool available. (This also becomes default in 11.)
So what exactly should I be seeing? This:

dev.cpu.0.%desc: ACPI CPU
dev.cpu.0.%driver: cpu
dev.cpu.0.%location: handle=\_PR_.C000
dev.cpu.0.%pnpinfo: _HID=none _UID=0
dev.cpu.0.%parent: acpi0
dev.cpu.0.temperature: 82.5C
dev.cpu.0.freq: 800
dev.cpu.0.freq_levels: 2200/7543 1900/6150 1600/4777 1300/3750 800/2091
dev.cpu.0.cx_supported: C1/1/0
dev.cpu.0.cx_lowest: C8
dev.cpu.0.cx_usage: 100.00% last 4934us

Why is it at c8? And what does the cx_supported do then?

For a lot of details on tuning power usage, read the article at https://wiki.freebsd.org/TuningPowerConsumption.

Finally, so a little debug. Kill powerd (service powerd stop) and run it with verbose on a terminal ("powerd -v" plus whatever options you have in powerd_flags) and watch what powerd is doing.
powerd: using sysctl for AC line status
powerd: using devd for AC line status
load   0%, current freq 2200 MHz ( 0), wanted freq 2131 MHz
load   0%, current freq 2200 MHz ( 0), wanted freq 2064 MHz
load   6%, current freq 2200 MHz ( 0), wanted freq 1999 MHz
load   9%, current freq 2200 MHz ( 0), wanted freq 1936 MHz
load   8%, current freq 2200 MHz ( 0), wanted freq 1875 MHz
changing clock speed from 2200 MHz to 1900 MHz
load   4%, current freq 1900 MHz ( 1), wanted freq 1816 MHz
load   0%, current freq 1900 MHz ( 1), wanted freq 1759 MHz
load   4%, current freq 1900 MHz ( 1), wanted freq 1704 MHz
load   0%, current freq 1900 MHz ( 1), wanted freq 1650 MHz
load   0%, current freq 1900 MHz ( 1), wanted freq 1598 MHz
changing clock speed from 1900 MHz to 1600 MHz
load   3%, current freq 1600 MHz ( 2), wanted freq 1548 MHz
load  10%, current freq 1600 MHz ( 2), wanted freq 1499 MHz
load   6%, current freq 1600 MHz ( 2), wanted freq 1452 MHz
load   6%, current freq 1600 MHz ( 2), wanted freq 1406 MHz
load   7%, current freq 1600 MHz ( 2), wanted freq 1362 MHz
load   4%, current freq 1600 MHz ( 2), wanted freq 1319 MHz
load   4%, current freq 1600 MHz ( 2), wanted freq 1277 MHz
changing clock speed from 1600 MHz to 1300 MHz
load   6%, current freq 1300 MHz ( 3), wanted freq 1237 MHz
load  13%, current freq 1300 MHz ( 3), wanted freq 1198 MHz
load   3%, current freq 1300 MHz ( 3), wanted freq 1160 MHz
load   3%, current freq 1300 MHz ( 3), wanted freq 1123 MHz
load   6%, current freq 1300 MHz ( 3), wanted freq 1087 MHz
load  22%, current freq 1300 MHz ( 3), wanted freq 1053 MHz
load   8%, current freq 1300 MHz ( 3), wanted freq 1020 MHz
load   3%, current freq 1300 MHz ( 3), wanted freq  988 MHz
load   9%, current freq 1300 MHz ( 3), wanted freq  957 MHz
load  21%, current freq 1300 MHz ( 3), wanted freq  927 MHz
load   3%, current freq 1300 MHz ( 3), wanted freq  898 MHz
load   7%, current freq 1300 MHz ( 3), wanted freq  869 MHz
load   9%, current freq 1300 MHz ( 3), wanted freq  841 MHz
load   7%, current freq 1300 MHz ( 3), wanted freq  814 MHz
load   7%, current freq 1300 MHz ( 3), wanted freq  800 MHz
changing clock speed from 1300 MHz to 800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  10%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  18%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  30%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  15%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  11%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   7%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   9%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   8%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  13%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   7%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   7%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  15%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  10%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   8%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   9%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   7%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   9%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  26%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  17%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   8%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   9%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   8%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  14%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  12%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   7%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  12%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  12%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  10%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   7%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   8%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   9%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   7%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   6%, current freq  800 MHz ( 4), wanted freq  800 MHz
load   7%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  16%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  11%, current freq  800 MHz ( 4), wanted freq  800 MHz
load  10%, current freq  800 MHz ( 4), wanted freq  800 MHz
^Ctotal joules used: 64.579

So aside from being informative, how can this help me? You guys mentioned locking up, was that happening each line here?

The -i and -r seemed reasonable for my purposes, so no change there, at least until I get a better feel for things anyway.

With regards powernow! I can't see it in dmesg (used grep), but est isn't used either as far as I can tell. How would I enable powernow in freebsd anyway? Or is it just a cpu thing and not a module?

CPU: AMD Phenom(tm) II N970 Quad-Core Processor (2194.63-MHz K8-class CPU)
Origin = "AuthenticAMD" Id = 0x100f53 Family = 0x10 Model = 0x5 Stepping = 3
Features=0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT>
  Features2=0x802009<SSE3,MON,CX16,POPCNT>
AMD Features=0xee500800<SYSCALL,NX,MMX+,FFXSR,Page1GB,RDTSCP,LM,3DNow!+,3DNow!> AMD Features2=0x837ff<LAHF,CMP,SVM,ExtAPIC,CR8,ABM,SSE4A,MAS,Prefetch,OSVW,IBS,SKINIT,WDT,NodeId>
  TSC: P-state invariant
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-acpi
To unsubscribe, send any mail to "[email protected]"

Reply via email to