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]"