Centrino CPU Speed auslesen/erhöhen

SantaCruze

Member
hallo leute,

kann mir jemand sagen wie ich die aktuelle cpu geschwindigkeit auslesen und ggf. erhöhen kann?

infos zu meinem notebook siehe anbei.

danke

michael

# dmesg

Copyright (c) 1992-2005 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD 5.4-RELEASE-p7 #0: Mon Sep 19 16:31:14 CEST 2005
root@holly.jawa.at:/usr/obj/usr/src/sys/NOTEBOOK
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Pentium(R) M processor 1.60GHz (1596.00-MHz 686-class CPU)
Origin = "GenuineIntel" Id = 0x6d6 Stepping = 6
Features=0xafe9f9bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,TM,PBE>
real memory = 502136832 (478 MB)
avail memory = 481689600 (459 MB)
npx0: <math processor> on motherboard
npx0: INT 16 interface
acpi0: <HP 3084> on motherboard
acpi0: Power Button (fixed)
acpi_ec0: <Embedded Controller: GPE 0x1d> port 0x66,0x62 on acpi0
Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0
cpu0: <ACPI CPU (3 Cx states)> on acpi0
acpi_acad0: <AC Adapter> on acpi0
acpi_cmbat0: <Control Method Battery> on acpi0
acpi_lid0: <Control Method Lid Switch> on acpi0
acpi_button0: <Power Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
pci0: <base peripheral> at device 0.1 (no driver attached)
pci0: <base peripheral> at device 0.3 (no driver attached)
agp0: <Intel 8285xM (85xGM GMCH) SVGA controller> port 0x1800-0x1807 mem 0xe0000000-0xe007ffff,0xe8000000-0xefffffff irq 10 at device 2.0
on pci0
agp0: detected 32636k stolen memory
agp0: aperture size is 128M
pci0: <display> at device 2.1 (no driver attached)
uhci0: <Intel 82801DB (ICH4) USB controller USB-A> port 0x1820-0x183f irq 10 at device 29.0 on pci0
usb0: <Intel 82801DB (ICH4) USB controller USB-A> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci1: <Intel 82801DB (ICH4) USB controller USB-B> port 0x1840-0x185f irq 11 at device 29.1 on pci0
usb1: <Intel 82801DB (ICH4) USB controller USB-B> on uhci1
usb1: USB revision 1.0
uhub1: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
uhci2: <Intel 82801DB (ICH4) USB controller USB-C> port 0x1860-0x187f at device 29.2 on pci0
usb2: <Intel 82801DB (ICH4) USB controller USB-C> on uhci2
usb2: USB revision 1.0
uhub2: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub2: 2 ports with 2 removable, self powered
pci0: <serial bus, USB> at device 29.7 (no driver attached)
pcib1: <ACPI PCI-PCI bridge> at device 30.0 on pci0
pci2: <ACPI PCI bus> on pcib1
rl0: <RealTek 8139 10/100BaseTX> port 0x3000-0x30ff mem 0xe0205800-0xe02058ff irq 10 at device 0.0 on pci2
miibus0: <MII bus> on rl0
rlphy0: <RealTek internal media interface> on miibus0
rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
rl0: Ethernet address: 00:c0:9f:65:0e:ac
cbb0: <TI1410 PCI-CardBus Bridge> at device 5.0 on pci2
cardbus0: <CardBus bus> on cbb0pccard0: <16-bit PCCard bus> on cbb0
pci2: <network> at device 6.0 (no driver attached)
fwohci0: <Texas Instruments TSB43AB21/A/AI/A-EP> mem 0xe0200000-0xe0203fff,0xe0205000-0xe02057ff irq 11 at device 7.0 on pci2
fwohci0: OHCI version 1.10 (ROM=1)
fwohci0: No. of Isochronous channels is 4.
fwohci0: EUI64 00:c0:9f:00:00:2f:00:0e
fwohci0: Phy 1394a available S400, 1 ports.
fwohci0: Link S400, max_rec 2048 bytes.
firewire0: <IEEE1394(FireWire) bus> on fwohci0
fwe0: <Ethernet over FireWire> on firewire0
if_fwe0: Fake Ethernet address: 02:c0:9f:2f:00:0e
fwe0: Ethernet address: 02:c0:9f:2f:00:0e
fwe0: if_start running deferred for Giant
sbp0: <SBP-2/SCSI over FireWire> on firewire0
fwohci0: Initiate bus reset
fwohci0: node_id=0xc000ffc0, gen=1, CYCLEMASTER mode
firewire0: 1 nodes, maxhop <= 0, cable IRM = 0 (me)
firewire0: bus manager 0 (me)
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel ICH4 UDMA100 controller> port 0x1810-0x181f,0x376,0x170-0x177,0x3f6,0x1f0-0x1f7 at device 31.1 on pci0
ata0: channel #0 on atapci0
ata1: channel #1 on atapci0
pci0: <serial bus, SMBus> at device 31.3 (no driver attached)
pcm0: <Intel ICH4 (82801DB)> port 0x18c0-0x18ff,0x1c00-0x1cff mem 0xe0100800-0xe01008ff,0xe0100c00-0xe0100dff irq 5 at device 31.5 on pci0
pcm0: <Unknown AC97 Codec (id = 0x43585430)>
pci0: <simple comms, generic modem> at device 31.6 (no driver attached)
acpi_tz0: <Thermal Zone> on acpi0
atkbdc0: <Keyboard controller (i8042)> port 0x64,0x60 irq 1 on acpi0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model IntelliMouse, device ID 3
orm0: <ISA Option ROMs> at iomem 0xe0000-0xe3fff,0xdf000-0xdffff,0xcd000-0xcdfff on isa0
pmtimer0 on isa0
ppc0: parallel port not found.
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0: configured irq 4 not in bitmap of probed irqs 0
sio0: port may not be enabled
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 8250 or not responding
sio1: configured irq 3 not in bitmap of probed irqs 0
sio1: port may not be enabled
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
uhub3: vendor 0x2101 USB2.0 Hub, class 9/0, rev 2.00/5.08, addr 2
uhub3: 4 ports with 4 removable, self powered
ums0: Microsoft Microsoft IntelliMouse\M-. Optical, rev 1.10/1.21, addr 3, iclass 3/1
ums0: 5 buttons and Z dir.
ukbd0: GM-TEK USB Composite Device, rev 1.01/0.01, addr 4, iclass 3/1
kbd1 at ukbd0
ums1: GM-TEK USB Composite Device, rev 1.01/0.01, addr 4, iclass 3/1
ums1: 3 buttons and Z dir.
Timecounter "TSC" frequency 1596004727 Hz quality 800
Timecounters tick every 10.000 msec
ad0: 57231MB <IC25N060ATMR04-0/MO3OAD4A> [116280/16/63] at ata0-master UDMA100
acd0: DVDR <NEC DVD+/-RW ND-6450A/2.36> at ata1-master PIO4
Mounting root from ufs:/dev/ad0s2a

# sysctl -a

hw.machine: i386
hw.model: Intel(R) Pentium(R) M processor 1.60GHz
hw.ncpu: 1
kern.ccpu: 1948
kern.smp.maxcpus: 1
kern.smp.cpus: 1
hw.ncpu: 1
hw.acpi.cpu.cx_supported: C1/1 C2/1
hw.acpi.cpu.cx_lowest: C1
hw.acpi.cpu.cx_usage: 100.00% 0.00%
machdep.cpu_idle_hlt: 1
dev.cpu.0.%desc: ACPI CPU (3 Cx states)
dev.cpu.0.%driver: cpu
dev.cpu.0.%location: handle=\_PR_.CPU0
dev.cpu.0.%pnpinfo: _HID=none _UID=0
dev.cpu.0.%parent: acpi0
 
Unter FBSD 6.0 gibt es "man cpufreq", bzw. kann man sich da einiges mehr bieten (und einstellen) lassen mittels "sysctl":
Code:
%sysctl -a | grep cpu
kern.threads.virtual_cpu: 1
kern.ccpu: 1948
kern.smp.cpus: 1
kern.smp.maxcpus: 1
debug.cpufreq.verbose: 0
debug.cpufreq.lowest: 0
hw.ncpu: 1
hw.acpi.cpu.cx_supported: C1/0 C2/90 C3/900
hw.acpi.cpu.cx_lowest: C1
hw.acpi.cpu.cx_usage: 100.00% 0.00% 0.00%
machdep.cpu_idle_hlt: 1
dev.cpu.0.%desc: ACPI CPU
dev.cpu.0.%driver: cpu
dev.cpu.0.%location: handle=\_PR_.CPU0
dev.cpu.0.%pnpinfo: _HID=none _UID=0
dev.cpu.0.%parent: acpi0
dev.cpu.0.freq: 1702
dev.cpu.0.freq_levels: 1702/-1 851/-1
dev.acpi_throttle.0.%parent: cpu0
dev.cpufreq.0.%driver: cpufreq
dev.cpufreq.0.%parent: cpu0

Schau Dir dabei /etc/rc.d/power_profile an.

Beispiel:
Meine Freq liegt bei 1702, diese verringere ich nun um die Hälft, also auf 851MHz:
Code:
sysctl dev.cpu.0.freq=851
dev.cpu.0.freq: 1702 -> 851
hochsetzen funktioniert analog dazu.

Ich denke da musst Du auf 6.0 updaten um in den Genuss zu kommen, zunindest habe ich diese Option unter einem 5.4 nicht gefunden.

Ansonsten sagt Dir dmesg ja schon Deine Geschwindigkeit:
CPU: Intel(R) Pentium(R) M processor 1.60GHz (1596.00-MHz 686-class CPU)
 
Oder du installierst unter 5.4 den Port sysutils/est. Dann kannst du den derzeitigen Takt über den Sysctl hw.est_curfreq und die möglichen Taktungen über hw.est_freqs auslesen. Allerdings musst du vorher den Dienst über
Code:
/usr/local/etc/rc.d/est.sh onestart
starten; wenn er bei jedem Start geladen werden soll, in /etc/rc.conf die Zeile
Code:
est_enable="YES"
einfügen.
 
danke für die schnelle hilfe, habe mir aus den ports "est" installiert,

sysctl -a | grep est ergibt folgendes:

hw.acpi.cpu.cx_lowest: C1
hw.est_verbose: 1
hw.est_curfreq: 1600
hw.est_freqs: 600 800 1000 1200 1400 1600
user.expr_nest_max: 32

damit kann man schon recht bequem den stauts auslesen. wie jedoch verringere/erhöhe ich mit mit "est" die cpu frequenz? oder dient "est" nur zum auslesen der parameter?

danke
 
sysctl -a | grep est

hw.est_verbose: 1
hw.est_curfreq: 1600
hw.est_freqs: 600 800 1000 1200 1400 1600

mit

# sysctl hw.est_curfreq=1600

kann man die geschwindigkeit auch regeln
 
Eigentlich brauchst du est nicht mehr. Das ist inzwischen im Kernel.

sysctl dev.cpu.0.freq=150

und schon läuft dein Rechner ziemlich langsam...
 
CPU Speed per OSD anzeigen lassen

Vielleicht ist mein Programm hier ganz nuetzlich.
Es zeigt die aktuelle CPU Frequenz und den Batterieladestatus als On Screen Display an.
Praktisch, wenn man sich den Programmaufruf auf nen Keyboardshortcut legt.
Zu haben ist es hier: http://bsd-geek.de/Files/nbosd-0.1.tgz
Einzige Abhaengigkeit ist misc/xosd aus dem Ports.
Das ganze Programm ist noch etwas unausgereift, funktioniert aber fuer mich soweit ganz gut.
Es waere schoen, wenn ich Lob/Kritik/etc. dazu bekommen koennte.

Gruss
laemodost
 
Zurück
Oben