CfT: powerd++

Das cpufreq Modul ist Teil des GENERIC Kernels unter amd64 und i386.
Das ist auch der Grund warum ich bisher noch nicht überprüft habe ob das Modul geladen ist. Ich bin einfach mal davon ausgegangen, dass [KB] einen selbst gebastelten Kernel fährt.

Der Check wären im rc Skript 6 Zeilen lang und würde 2 Forks und 4 Context-Switches verursachen. Also nicht so arg teuer. Ich habe das mal gebenchmarkt, das wären auf meinem System 0.36 ms Laufzeit. Um ehrlich zu sein ist das mehr als ich dachte.
 
letzter Abschnitt in http://angryswarm.blogspot.com/2016/04/powerd-better-cpu-clock-control-for.html ;-)

TODOs
Currently the power source detection depends on ACPI, I need to implement something similar for older and non-x86/amd64 systems. Currently those just fall back to the unknown state.

Wie auch immer, cpufreq scheint geladen zu sein:

Code:
user@machine: /home/brandt # kldload cpufreq.ko
kldload: can't load cpufreq.ko: module already loaded or in kernel

Auch wenn bei einen kldstat das Modul cpufreq.ko nicht auftaucht. Deshalb gehe ich davon aus, dass es wie bereits oben erwähnt in den Kernel (GENERIC) gebacken wurde.
Dann muss ich wohl doch mal das BIOS durchforsten...
 
"non-x86/amd64" bedeutet non-x86 / non-amd64
So ist das zumindest gemeint. Hätte ich da non-x86/-amd64 schreiben sollen? Sieht komisch aus.

Auch wenn bei einen kldstat das Modul cpufreq.ko nicht auftaucht. Deshalb gehe ich davon aus, dass es wie bereits oben erwähnt in den Kernel (GENERIC) gebacken wurde.
Der Befehl "kldstat -v" zeigt Dir auch eingebackene Module.

Aber ich befürchte Dein Problem könnte sein, dass deine CPU keine P-States kann. Was sagt den "dmesg|grep CPU:"?
 
nicht viel, leider:

CPU: AMD A10-5750M APU with Radeon(tm) HD Graphics (2495.39-MHz K8-class CPU)
CPU: AMD A10-5750M APU with Radeon(tm) HD Graphics (2495.39-MHz K8-class CPU)
CPU: AMD A10-5750M APU with Radeon(tm) HD Graphics (2495.39-MHz K8-class CPU)
CPU: AMD A10-5750M APU with Radeon(tm) HD Graphics (2495.39-MHz K8-class CPU)
CPU: AMD A10-5750M APU with Radeon(tm) HD Graphics (2495.39-MHz K8-class CPU)
CPU: AMD A10-5750M APU with Radeon(tm) HD Graphics (2495.39-MHz K8-class CPU)

Im BIOS hab ich außer CPU Power Management nix dazu gefunden ...

Ich befürchte, du hast Recht und das wäre traurig ...
Zum Prozessor bemühe ich jetzt mal Google, dann wissen wir mehr...
 
Hmm, nach allem was ich googlen konnte unterstützt die CPU P-States.

Du kannst mal versuchen das amdsmb oder amdpm Modul zu laden, ich greife gerade schon nach Strohhalmen.
 
Hm, genauso ratlos ...

beide vorgeschlagenen Kernel-Module geladen, jedoch ändert sich hier nicht viel:

Code:
user@machine : /home/brandt # sysctl -a | grep cpu
kern.smp.cpus: 4
kern.smp.maxcpus: 64
kern.ccpu: 0
  <cpu count="4" mask="f">0, 1, 2, 3</cpu>
    <cpu count="4" mask="f">0, 1, 2, 3</cpu>
kern.sched.cpusetsize: 8
kern.racct.pcpu_threshold: 1
cpu    HAMMER
device    cpufreq
net.inet.tcp.per_cpu_timers: 0
debug.cpufreq.verbose: 0
debug.cpufreq.lowest: 0
debug.acpi.cpu_unordered: 0
hw.ncpu: 4
hw.acpi.cpu.cx_lowest: C1
dev.acpi_perf.3.%parent: cpu3
dev.acpi_perf.2.%parent: cpu2
dev.acpi_perf.1.%parent: cpu1
dev.acpi_perf.0.%parent: cpu0
dev.cpu.3.cx_usage: 100.00% 0.00% last 3076us
dev.cpu.3.cx_lowest: C1
dev.cpu.3.cx_supported: C1/1/0 C2/2/100
dev.cpu.3.%parent: acpi0
dev.cpu.3.%pnpinfo: _HID=none _UID=0
dev.cpu.3.%location: handle=\_PR_.C003
dev.cpu.3.%driver: cpu
dev.cpu.3.%desc: ACPI CPU
dev.cpu.2.cx_usage: 100.00% 0.00% last 63us
dev.cpu.2.cx_lowest: C1
dev.cpu.2.cx_supported: C1/1/0 C2/2/100
dev.cpu.2.%parent: acpi0
dev.cpu.2.%pnpinfo: _HID=none _UID=0
dev.cpu.2.%location: handle=\_PR_.C002
dev.cpu.2.%driver: cpu
dev.cpu.2.%desc: ACPI CPU
dev.cpu.1.cx_usage: 100.00% 0.00% last 45us
dev.cpu.1.cx_lowest: C1
dev.cpu.1.cx_supported: C1/1/0 C2/2/100
dev.cpu.1.%parent: acpi0
dev.cpu.1.%pnpinfo: _HID=none _UID=0
dev.cpu.1.%location: handle=\_PR_.C001
dev.cpu.1.%driver: cpu
dev.cpu.1.%desc: ACPI CPU
dev.cpu.0.cx_usage: 100.00% 0.00% last 203us
dev.cpu.0.cx_lowest: C1
dev.cpu.0.cx_supported: C1/1/0 C2/2/100
dev.cpu.0.%parent: acpi0
dev.cpu.0.%pnpinfo: _HID=none _UID=0
dev.cpu.0.%location: handle=\_PR_.C000
dev.cpu.0.%driver: cpu
dev.cpu.0.%desc: ACPI CPU
dev.cpu.%parent:
security.jail.param.cpuset.id: 0

Das "cpu HAMMER" ist aber nicht das Problem oder? Muss ich evtl. einen eigenen Kernel für diesem Prozessor backen? Schauen wir mal welche CPU-Varianten uns hier angeboten werden...
 
Zurück
Oben