mitch_de Posted November 28, 2008 Share Posted November 28, 2008 So is there a reason why I should use GenericCPUPowerManagement, considering I am using a Vanilla Kernel? Would you do it if you were in my shoes? If you want to save power (watts) / less heat on low-middle cpu loads - sure i would. Made more for mobile usage (akku time longer) but also useful running OC desktop system. Most reason for speedstep is usage with your mobile "mac". Speedstep cant save power/heat if cpus is mostly idle (zero load on CPU= C1E powersaving, hardware!) or cpu is longer/very often near max load (>>80% CPU load each kernel). Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-981046 Share on other sites More sharing options...
ferywu Posted November 28, 2008 Share Posted November 28, 2008 With new kernel run on 64 bit mode everything seem fine but still no change for this kext effect. pstate always point to 0 (800MHz) whatever cpu load goes high or idle gcpupmlog.txt.zip Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-981332 Share on other sites More sharing options...
Superhai Posted November 29, 2008 Author Share Posted November 29, 2008 With new kernel run on 64 bit mode everything seem fine but still no change for this kext effect.pstate always point to 0 (800MHz) whatever cpu load goes high or idle damn... try the new download and tell me output from sudo dmesg | grep Generic There is some fishy going around but i am not able to catch it! Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-981363 Share on other sites More sharing options...
CooSee Posted November 29, 2008 Share Posted November 29, 2008 purrs like a kitten ! Thanks !!! CooSee ' Ya Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-981369 Share on other sites More sharing options...
mitch_de Posted November 29, 2008 Share Posted November 29, 2008 Tryed latest V 1.1, C2D 4400. Compared to perfect running V 1.20: ??? stepping , because if i run OpenMark , which can used to force very variable but stable CPU Load (by using mouse wheel - more/less balls). - after frist load it stays (forever) at *7, even near zero % cpu load , util i higher (> 30%) cpu load by start+running OpenMark - then it starts an *6 *10 *6 *10 .... (no *7, *8, *9) circle - even if cpu load %is near constant (30 / 50 / 70) - after finish OpenMark stays (near zero % CPU load) at *7 (forever if laod stays near zero % load) Can it be that the new histeresys code or your CPU load measurement with Step up/down code has some problems ? My example: 1. An App running (at fullspped MHZ) which gives constant(theoretical) 50% CPU load 2. Now loading/starting new .kext. stepping started... 3. If you now step down (slower MHZ) the CPU load will get higher while App does exact same process = CPU load now 75 % (slower MHZ = more % CPU if same app take 50% load at full speed MHZ!) If you then collect /measure avg CPU load you perhaps step false or do not step (what you should ) ???? Back to example (app is running constant / at full MHZ 50% load) Your measurement decided: less MHZ needed, because of the 50% load What happens: CPU load % rises from 50% (full MHZ) to for example 75% load Then your measurement decide: aha, high load= more MHZ needed What happens: CPU load % falls to 50 % again, less MHZ needed .... Now maybe thats the circle i wrote at beginn of my post: *6, *10, *6, *10 if an app takes constant(theoretical) midrange cpu load at full MHZ speed ? Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-981635 Share on other sites More sharing options...
Superhai Posted November 29, 2008 Author Share Posted November 29, 2008 Now maybe thats the circle i wrote at beginn of my post: *6, *10, *6, *10 if an app takes constant(theoretical) midrange cpu load at full MHZ speed ? I dont understand your sentence, what is constant midrange cpu load at full speed? If it is not working as suggested I will be very happy if you include the information I requested or else it is hard to pinpoint issues. Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-981938 Share on other sites More sharing options...
mitch_de Posted November 29, 2008 Share Posted November 29, 2008 I dont understand your sentence, what is constant midrange cpu load at full speed? If it is not working as suggested I will be very happy if you include the information I requested or else it is hard to pinpoint issues. Meaning: I run an App wjich takes constant 50% CPU Load (without speedstep). kextload ... Now the throtthling goes: *6, *10, *6,*10 ..... (1600 MHZ, 2660 MHZ, 1600 MHZ, 2660 MHZ,....) It would be possible (by little CPU load +/-) that *9,*10,*9,*10 but should be never *6,*10, *6, *10 *6 means: Multiplyer * FSB(266) = CPU MHZ Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-982044 Share on other sites More sharing options...
TBH Posted November 30, 2008 Share Posted November 30, 2008 I installed this kext on a AMD A64 3200+ Winchester but the .app didn't recognize the settings. Since I'm quite noob I would like to know if it's still unsupported. Here is the log: enericCPUPowerManagement: -- MSR_AMD_FIDVID_CTL MSR 0000060C 00002710 GenericCPUPowerManagement: 00-04:FID 0C 08-12:VID 00 GenericCPUPowerManagement: 16:FIDC 0 17:VIDC 0 20:FIDCHGRATIO 0 GenericCPUPowerManagement: 32-51:SGTC 02710 GenericCPUPowerManagement: -- MSR_AMD_FIDVID_STS MSR 040C0C0C 00040606 GenericCPUPowerManagement: 00-05:CFID 0C 08-13:SFID 00 16-21:MFID 0C GenericCPUPowerManagement: 32-37:CVID 06 40-45:SVID 00 48-53:MVID 06 GenericCPUPowerManagement: Unloading GenericCPUPowerManagement: [Error] Unable to find a matching or supported cpu id in table GenericCPUPowerManagement: Please provide the following info to make it into a later update GenericCPUPowerManagement: CPU Vendor: AMD [AMD Athlon(tm) 64 Processor 3200+] GenericCPUPowerManagement: CPU Signature: 10ff0 GenericCPUPowerManagement: Mobile: 0 Latency: 100 GenericCPUPowerManagement: State 0 [298c] State X [2c82] GenericCPUPowerManagement: -- ACPI CTL 0 E020298C GenericCPUPowerManagement: 00-05:FID 0C 06-10:VID 06 11-17:VST 05 18-19:MVS 0 20-26:PLL 02 27:EXT 0 28-29:RVO 2 30-31:IRT 3 GenericCPUPowerManagement: -- ACPI CTL X E0202C82 GenericCPUPowerManagement: 00-05:FID 02 06-10:VID 12 11-17:VST 05 18-19:MVS 0 20-26:PLL 02 27:EXT 0 28-29:RVO 2 30-31:IRT 3 GenericCPUPowerManagement: -- MSR_AMD_FIDVID_CTL MSR 0000060C 00002710 GenericCPUPowerManagement: 00-04:FID 0C 08-12:VID 00 GenericCPUPowerManagement: 16:FIDC 0 17:VIDC 0 20:FIDCHGRATIO 0 GenericCPUPowerManagement: 32-51:SGTC 02710 GenericCPUPowerManagement: -- MSR_AMD_FIDVID_STS MSR 040C0C0C 00040606 GenericCPUPowerManagement: 00-05:CFID 0C 08-13:SFID 00 16-21:MFID 0C GenericCPUPowerManagement: 32-37:CVID 06 40-45:SVID 00 48-53:MVID 06 GenericCPUPowerManagement: Unloading I'm using Voodoo RC1 as kernel and AppleSMBIOSEFI as SMBIOS. Thanks! Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-982445 Share on other sites More sharing options...
Effendi Posted November 30, 2008 Share Posted November 30, 2008 E6600 @ 2,4GHz on a GA-965-DS3 rev. 3.3 bash-3.2# ioreg -lxw0 -r -c GenericCPUPowerManagement | grep "Characteristics" "Characteristics" = {"Voltage Highest"=0x4d5,"Signature"=0x6f6,"CPU Count"=0x2,"Build Date"="Nov 29 2008","Constant TSC"=Yes,"Voltage Lowest"=0x4d5,"VID Lowest"=0x2a,"Product Name"="GenericCPUPowerManagement.kext","Override"=No,"Version"="1.1.0","Individual Core Control"=No,"Frequency Lowest"=0x63c,"DID Lowest"=0x0,"Timer Timeout"=0xfa,"CPU Driver"=0x0,"Mobile CPU"=No,"Build Time"="01:07:53","Auto Throttle On Startup"=Yes,"Build Config"="Release","Frequency Highest"=0x95a,"String"="Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz","DID Highest"=0x0,"FID Lowest"=0x6,"VID Highest"=0x2a,"FID Highest"=0x9,"P-State Count"=0x3} "Status" = {"Threshold"=0xc8,"Profile"=0x0,"CPU"=({"Load"={"User"=0x28,"Accumulated"=0x50,"System"=0x28,"Idle"=0x3ae,"Nice"=0x0},"Thermal Readout"=0x3d,"Frequency"=0x63c,"Current P-State"=0x3,"DID"=0x0,"VID"=0x1d,"FID"=0x6,"Voltage"=0x433,"Exact"=No,"Name"="CPU0"},{"Load"={"User"=0x0,"Accumulated"=0x0,"System"=0x0,"Idle"=0x400,"Nice"=0x0},"Thermal Readout"=0x3e,"Frequency"=0x63c,"Current P-State"=0x3,"DID"=0x0,"VID"=0x1d,"FID"=0x6,"Voltage"=0x433,"Exact"=No,"Name"="CPU1"}),"Timer Timeout (ms)"=0xfa,"P-State Limit"=0x0,"P-State Capability"=0x0,"Kernel Extension Ready"=Yes,"Hysteresis"=0x32,"Auto Throttle Running"=Yes} bash-3.2# ./gcpupmcontrol all GenericCPUPowerManagement.kext 1.1.0 (Release) Nov 29 2008 01:07:53 CPU: 2 x Desktop Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz (6f6) P-States: 4 - Frequency 1596 MHz -> 2394 MHz - Voltage 1237 mV -> 1237 mV [06-00-2a] -> [09-00-2a] Auto throttle on at startup: true, Voltage Override: false, Timer: 250 ms Thanks for the good work, keep it up! Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-982455 Share on other sites More sharing options...
ferywu Posted November 30, 2008 Share Posted November 30, 2008 damn... try the new download and tell me output fromsudo dmesg | grep Generic There is some fishy going around but i am not able to catch it! With 1.0.20 it can find pstate table, but with 1.1.0 i think this kext become confuse finding pstate table. On 1.0.20 it can find max 6 pstates table even i set to 0 (max states), but it still great even no throttle capabilities yet. From mercurysquad new release 22 Nov 2008 An experimental v1.4.5 is available now. It will try to auto-create a pstate list for you if your ACPI does not return the pstate table. This should allow you to use the kext if earlier you received "Error getting PState table from ACPI". The autothrottler's target CPU load can now also be configured in the Info.plist file. bash-3.2# kextload GenericCPUPowerManagement.kext kextload: GenericCPUPowerManagement.kext loaded successfully bash-3.2# dmesg | grep Generic GenericCPUPowerManagement: [Debug] Initialization : Probe GenericCPUPowerManagement: [Debug] Found 2 I/O Kit CPU's and 2 ACPI CPU's GenericCPUPowerManagement: [Debug] CPU Hardware Driver Setup Complete GenericCPUPowerManagement: [Debug] Initialization : Start GenericCPUPowerManagement: GenericCPUPowerManagement.kext 1.1.0 (Debug) Nov 29 2008 01:07:44 [1050] GenericCPUPowerManagement: (C) 2008 Superhai, All Rights Reserved GenericCPUPowerManagement: [Debug] P-State 0: 2000 MHz [0C-00] - 1400 mV [06] GenericCPUPowerManagement: [Debug] CPU 0: CTL 0000 TR 000 GenericCPUPowerManagement: [Debug] CPU 1: CTL 0000 TR 000 GenericCPUPowerManagement: [Debug] Last loop used 0 us GenericCPUPowerManagement: [Debug] CPU 0 load 0137 P-State 0 (approximate) and frequency 800 GenericCPUPowerManagement: [Debug] CPU 1 load 0146 highest P-State 0 (approximate) and frequency 800 GenericCPUPowerManagement: [Debug] Last loop used 75 us GenericCPUPowerManagement: [Debug] CPU 0 load 0068 highest P-State 0 (approximate) and frequency 800 GenericCPUPowerManagement: [Debug] CPU 1 load 0068 P-State 0 (approximate) and frequency 800 GenericCPUPowerManagement: [Debug] Last loop used 121 us GenericCPUPowerManagement: [Debug] CPU 0 load 0030 P-State 0 (approximate) and frequency 800 GenericCPUPowerManagement: [Debug] CPU 1 load 0045 highest P-State 0 (approximate) and frequency 800 GenericCPUPowerManagement: [Debug] Last loop used 93 us GenericCPUPowerManagement: [Debug] CPU 0 load 0038 P-State 0 (approximate) and frequency 800 GenericCPUPowerManagement: [Debug] CPU 1 load 0068 highest P-State 0 (approximate) and frequency 800 bash-3.2# ./gcpupmcontrol all GenericCPUPowerManagement.kext 1.1.0 (Debug) Nov 29 2008 01:07:44 CPU: 2 x Desktop AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ (20fb1) P-States: 1 - Frequency 2000 MHz -> 2000 MHz - Voltage 1350 mV -> 1350 mV [0c-00-08] -> [0c-00-08] Auto throttle on at startup: true, Voltage Override: true, Timer: 250 ms bash-3.2# ./gcpupmcontrol about GenericCPUPowerManagement.kext 1.1.0 (Debug) Nov 29 2008 01:07:44 With ACPI set to true on plist, this what i found Nov 29 20:06:16 devel kernel[0]: GenericCPUPowerManagement: [Debug] Initialization : Probe Nov 29 20:06:16 devel kernel[0]: GenericCPUPowerManagement: [Debug] Found 2 I/O Kit CPU's and 2 ACPI CPU's Nov 29 20:06:16 devel kernel[0]: GenericCPUPowerManagement: [Debug] PCR GRD: 82 Len: 000C ASI: 7F RBW: 00 RBO: 00 ASZ: 00 Nov 29 20:06:16 devel kernel[0]: GenericCPUPowerManagement: [Debug] Address 0 0 Nov 29 20:06:16 devel kernel[0]: GenericCPUPowerManagement: [Debug] Address PCI: Offset: 0000 Function: 0 Device: 00 Bus: 00 Segment: 0000 Reserved: 0000 Nov 29 20:06:16 devel kernel[0]: GenericCPUPowerManagement: [Error] Unable to use ACPI to control Power Management Nov 29 20:06:16 devel kernel[0]: GenericCPUPowerManagement: [Warning] Unloading Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-982575 Share on other sites More sharing options...
mitch_de Posted November 30, 2008 Share Posted November 30, 2008 to SUPERHAI : I tested last 1.1 kext (i wrote about some problems of stepping up/down circle) 1. Works better now ! 2. I looked now in the debug output too GenericCPUPowerManagement: [Debug] Initialization : Probe GenericCPUPowerManagement: [Debug] Found 2 I/O Kit CPU's and 4 ACPI CPU's GenericCPUPowerManagement: [Debug] Minimum VID Probe GenericCPUPowerManagement: [Debug] Minimum VID Probe Complete : 28 GenericCPUPowerManagement: [Debug] CPU Hardware Driver Setup Complete GenericCPUPowerManagement: [Debug] Initialization : Start GenericCPUPowerManagement: GenericCPUPowerManagement.kext 1.1.0 (Debug) Nov 30 2008 03:25:21 [1050] GenericCPUPowerManagement: © 2008 Superhai, All Rights Reserved GenericCPUPowerManagement: [Debug] P-State 0: 2660 MHz [0A-00] - 1200 mV [27] GenericCPUPowerManagement: [Debug] P-State 1: 2394 MHz [09-00] - 1200 mV [27] GenericCPUPowerManagement: [Debug] P-State 2: 2128 MHz [08-00] - 1200 mV [27] GenericCPUPowerManagement: [Debug] P-State 3: 1862 MHz [07-00] - 1200 mV [27] GenericCPUPowerManagement: [Debug] P-State 4: 1596 MHz [06-00] - 1200 mV [27] GenericCPUPowerManagement: [Debug] CPU 0: CTL 0A28 TR 064 GenericCPUPowerManagement: [Debug] CPU 1: CTL 0A28 TR 065 GenericCPUPowerManagement: [Debug] Last loop used 0 us GenericCPUPowerManagement: [Debug] CPU 0 load 0044 P-State 1 (approximate) and frequency 2660 GenericCPUPowerManagement: [Debug] CPU 1 load 0045 highest P-State 1 (approximate) and frequency 2660 GenericCPUPowerManagement: [Debug] AutoThrottle - from 1 to 4 - Requesting 0627 GenericCPUPowerManagement: [Debug] Last loop used 111 us GenericCPUPowerManagement: [Debug] CPU 0 load 0025 highest P-State 1 (approximate) and frequency 2660 GenericCPUPowerManagement: [Debug] CPU 1 load 0023 P-State 1 (approximate) and frequency 2660 GenericCPUPowerManagement: [Debug] AutoThrottle - from 1 to 4 - Requesting 0627 bash-3.2# dmesg GenericCPUPowerManagement: [Debug] CPU 0 load 0073 highest P-State 4 (approximate) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0045 P-State 4 (approximate) and frequency 1596 GenericCPUPowerManagement: [Debug] Last loop used 112 us Now also some states between 1596 and 2660 are in sight ! HINT: Maybe an problem of "why now so low MHZ?!!!" Pstates. I wrote long time ago about what happens if one core is near full load, one near idle. I want that in this case - much different core % loads - you do NOT! trottle down to slower MHZ. Meaning: Not using average of 95% load Core1 + 10% Core2 = 55 % Average (would be give to slow MHZ!) You said then it will be computed. But i cant be , or i dont understand it well., wanting not only max. powersaving also very good running CPU if OS X loads Cores with very different CPU load ! Is it possible to do an: IF average differences of all Cores > DIFF_LIMIT (0.3 to 0.5) highest load % = highest load % * 1.0 + DIFF_LIMIT end if EXAMPLE if found in my testing: OK (means not much % load diff between cores) GenericCPUPowerManagement: [Debug] CPU 0 load 0078 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0083 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] Last loop used 113 us GenericCPUPowerManagement: [Debug] CPU 0 load 0065 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0088 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 0 load 0173 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0200 highest P-State 4 (exact) and frequency 1596 ??? Why step up/down here - near nothing in load whas changed, (debug output in one pice ) GenericCPUPowerManagement: [Debug] Last loop used 111 us GenericCPUPowerManagement: [Debug] CPU 0 load 0060 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0063 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] Last loop used 115 us GenericCPUPowerManagement: [Debug] CPU 0 load 0058 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0063 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] Last loop used 111 us GenericCPUPowerManagement: [Debug] CPU 0 load 0078 highest P-State 3 (exact) and frequency 1862 ???? GenericCPUPowerManagement: [Debug] CPU 1 load 0058 P-State 3 (exact) and frequency 1862 GenericCPUPowerManagement: [Debug] AutoThrottle - from 3 to 4 - Requesting 0627 GenericCPUPowerManagement: [Debug] Last loop used 212 us GenericCPUPowerManagement: [Debug] CPU 0 load 0060 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0090 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] Last loop used 112 us GenericCPUPowerManagement: [Debug] CPU 0 load 0058 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0068 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] Last loop used 117 us ??? Why step up/down here NOT (really - measure says trotthle, nothing happend!) - load was changed, (debug output in one pice ) GenericCPUPowerManagement: [Debug] CPU 0 load 0115 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0093 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] Last loop used 114 us GenericCPUPowerManagement: [Debug] CPU 0 load 0138 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0175 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] Last loop used 124 us GenericCPUPowerManagement: [Debug] CPU 0 load 0138 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0188 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] Last loop used 115 us GenericCPUPowerManagement: [Debug] CPU 0 load 0310 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0213 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] AutoThrottle - from 4 to 3 - Requesting 0727 GenericCPUPowerManagement: [Debug] Last loop used 196 us **where is now the more MHZ ???? *** GenericCPUPowerManagement: [Debug] CPU 0 load 0178 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0198 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] Last loop used 113 us GenericCPUPowerManagement: [Debug] CPU 0 load 0140 P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] CPU 1 load 0175 highest P-State 4 (exact) and frequency 1596 GenericCPUPowerManagement: [Debug] Last loop used 112 us THANKS !!! Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-982643 Share on other sites More sharing options...
ferywu Posted November 30, 2008 Share Posted November 30, 2008 With newest download, the different things likely first succeed finding pstate at least min to 800MHz max to 2,2GHz but the second system failed to find , everytime always at 800MHz on laptop with AMD64 Turion 3600 (iDeneb 1.3) hw.busfrequency = 133000000 hw.cpufrequency = 800000000 hw.tbfrequency = 1000000000 hw.tbfrequency: 1000000000 hw.cpufrequency_max: 2200000000 hw.cpufrequency_min: 800000000 hw.cpufrequency: 800000000 hw.busfrequency_max: 133000000 hw.busfrequency_min: 133000000 hw.busfrequency: 133000000 on pc with AMD64 X2 3800 (Leo4All v5) hw.busfrequency = 200000000 hw.cpufrequency = 800000000 hw.tbfrequency = 1000000000 hw.tbfrequency: 1000000000 hw.cpufrequency_max: 2000000000 hw.cpufrequency_min: 2000000000 hw.cpufrequency: 800000000 hw.busfrequency_max: 200000000 hw.busfrequency_min: 200000000 hw.busfrequency: 200000000 Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-982683 Share on other sites More sharing options...
CooSee Posted November 30, 2008 Share Posted November 30, 2008 purrs like a kitten ! Thanks !!! CooSee ' Ya sorry, but i must retract my statement, because i get Kernel Panics - System Freeze :wink2: ! removed your *.kext and everthing's fine! running 6 hours now and no freeze! anyway Thanks for your work! CooSee ' Ya Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983075 Share on other sites More sharing options...
mitch_de Posted November 30, 2008 Share Posted November 30, 2008 KP & freezes: I am sure that it can be a problem of not set CPU voltages (min, max, overwrite=YES) - if nothing else is wrong wizh your HW / Drivers). Especially if you overclocked the CPU and/or you system didnt get the VID values from ACPI. If x MHZ with Y % load has to low zzzz mVolts you can get KPs or freezes. I would check the www.intel.com page (processors desktop) and look what mVolts your CPU can handle, and edit the vuales min, max, overwrite=YES. Min can for first test (KP agian or np KP ?) be same as max. Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983119 Share on other sites More sharing options...
CooSee Posted November 30, 2008 Share Posted November 30, 2008 KP & freezes:I am sure that it can be a problem of not set CPU voltages (min, max, overwrite=YES) - if nothing else is wrong wizh your HW / Drivers). Especially if you overclocked the CPU and/or you system didnt get the VID values from ACPI. If x MHZ with Y % load has to low zzzz mVolts you can get KPs or freezes. I would check the www.intel.com page (processors desktop) and look what mVolts your CPU can handle, and edit the vuales min, max, overwrite=YES. Min can for first test (KP agian or np KP ?) be same as max. I never overlocked the CPU or try anything else, why should i do that ! just installed the *.kext and yesterday everything themes to work, but only for 3 hours, more or less! and before, i never get a Kernel Panic, Never ever !!!!!! i'am looking TV, using Firefox, write a Document with WinBlows Office and so on...all at the same Time and after i installed the *.kext, the System get a ' hiccup ' and the mouse hangs for one or two sec., but now without it, EVERYTHING worked !!! and by the way, my System is 99,99% OSX compatible!!! I know my System !!! CooSee ' Ya Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983150 Share on other sites More sharing options...
mitch_de Posted November 30, 2008 Share Posted November 30, 2008 I never overlocked the CPU or try anything else, why should i do that ! just installed the *.kext and yesterday everything themes to work, but only for 3 hours, more or less! and before, i never get a Kernel Panic, Never ever !!!!!! i'am looking TV, using Firefox, write a Document with WinBlows Office and so on...all at the same Time and after i installed the *.kext, the System get a ' hiccup ' and the mouse hangs for one or two sec., but now without it, EVERTHING worked !!! and by the way, my System is 99,99% OSX compatible!!! I know my System !!! CooSee ' Ya Yeah, but even if you NOT OC your system, it can be that superhai´s speedstep didnt know excact what VIDs (min to max xyz mVolts) to use and take defaults which maybe to low. And if they are to low an KP is possible, if CPU + L2 Cache has some load ! Check with the debug version what happens after kextload with the dmesg command (both in terminal) You will also see, with orig. .plist (no own VIDs) what mVolts speedstep use and perhaps they are to low for YOUR system. Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983219 Share on other sites More sharing options...
CooSee Posted November 30, 2008 Share Posted November 30, 2008 @ mitch_de No harm meant ! i don't need it! for me it's ok, just like it is, without this *.kext! CooSee ' Ya Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983337 Share on other sites More sharing options...
Superhai Posted December 1, 2008 Author Share Posted December 1, 2008 Uploaded the new app for the 1.1 kext version. Remember to download latest version of the kext for this to work properly. Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983479 Share on other sites More sharing options...
talisman Posted December 1, 2008 Share Posted December 1, 2008 The parameters being used by GenericCPUPowerManagement.kext is not quite correct. I have a T9300. The commandline app gives.... GenericCPUPowerManagement.kext 1.1.0 (Release) Nov 30 2008 03:08:47 CPU: 2 x Mobile Intel(R) Core(TM)2 Duo CPU T9300 @ 2.50GHz (10676) P-States: 10 - Frequency 600 MHz -> 2500 MHz - Voltage 1000 mV -> 1137 mV [86-00-17] -> [4c-00-22] Auto throttle on at startup: true, Voltage Override: false, Timer: 250 ms the frequency range should be 800 MHz -> 2500 MHz the voltage range should be 1000mV -> 1250 mV and I think the number of p-states should be 6 and not 10 (might be a math error???) If there is a way that I can mod min cpu frequency and max cpu voltage please let me know. Thanks Superhai Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983494 Share on other sites More sharing options...
Superhai Posted December 1, 2008 Author Share Posted December 1, 2008 With 1.0.20 it can find pstate table, but with 1.1.0 i think this kext become confuse finding pstate table.On 1.0.20 it can find max 6 pstates table even i set to 0 (max states), but it still great even no throttle capabilities yet. There is something strange. I uploaded a new version so if you run the debug version it provides a bit more output. The parameters being used by GenericCPUPowerManagement.kext is not quite correct. I have a T9300. The commandline app gives.... the frequency range should be 800 MHz -> 2500 MHz the voltage range should be 1000mV -> 1250 mV and I think the number of p-states should be 6 and not 10 (might be a math error???) If there is a way that I can mod min cpu frequency and max cpu voltage please let me know. If you don't want it to throttle to 600 MHz then limit the lowest P-State. Max CPU voltage is read from cpu internal hardware registers. If you think they are incorrect try to use the override option. Number of P-States is an arbitrary number. It isn't declared to be this or that. In your case from 600 to 2500 you have: 1:600 2:800 3:1000 3:1200 4:1400 5:1600 6:1800 7:2000 8:2200 9:2400 10:2500 if you look carefully you will see that they follow the multiplier. On your CPU which supports non integer bus ratios as well, you could theoretically add 8 more steps in there. You could also create P-States just based on voltage values. Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983521 Share on other sites More sharing options...
Alex HQuest Posted December 1, 2008 Share Posted December 1, 2008 Using debug kext: dmesg | grep GenericCPUPowerManagement GenericCPUPowerManagement: [Debug] Initialization : ProbeGenericCPUPowerManagement: [Debug] Found 2 I/O Kit CPU's and 2 ACPI CPU's GenericCPUPowerManagement: [Debug] Minimum VID Probe GenericCPUPowerManagement: [Debug] Minimum VID Probe Complete : 2D GenericCPUPowerManagement: [Debug] Intel 00000F2D 00000F2D GenericCPUPowerManagement: [Debug] CPU Hardware Driver Setup Complete GenericCPUPowerManagement: [Debug] Initialization : Start GenericCPUPowerManagement: GenericCPUPowerManagement.kext 1.1.0 (Debug) Dec 1 2008 03:17:44 [1050] GenericCPUPowerManagement: © 2008 Superhai, All Rights Reserved GenericCPUPowerManagement: [Debug] P-State 0: 3375 MHz [0F-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 1: 3150 MHz [0E-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 2: 2925 MHz [0D-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 3: 2700 MHz [0C-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 4: 2475 MHz [0B-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 5: 2250 MHz [0A-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 6: 2025 MHz [09-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 7: 1800 MHz [08-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 8: 1575 MHz [07-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 9: 1350 MHz [06-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 10: 1125 MHz [05-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 11: 0900 MHz [04-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 12: 0675 MHz [03-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 13: 0450 MHz [02-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 14: 0225 MHz [01-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] P-State 15: 0000 MHz [00-00] - 1275 mV [2D] GenericCPUPowerManagement: [Debug] CPU 0: CTL 0F2D TR 000 GenericCPUPowerManagement: [Debug] CPU 1: CTL 0F2D TR 000 GenericCPUPowerManagement: [Debug] Last loop used 0 us GenericCPUPowerManagement: [Debug] CPU 0 load 0226 highest P-State 0 (exact) and frequency 3375 GenericCPUPowerManagement: [Debug] CPU 1 load 0225 P-State 0 (exact) and frequency 3375 GenericCPUPowerManagement: [Debug] Last loop used 315 us GenericCPUPowerManagement: [Debug] CPU 0 load 0293 highest P-State 0 (exact) and frequency 3375 GenericCPUPowerManagement: [Debug] CPU 1 load 0268 P-State 0 (exact) and frequency 3375 ioreg -lxw0 -r -c GenericCPUPowerManagement | grep "Characteristics" "Characteristics" = {"Voltage Highest"=0x4fb,"Signature"=0xf41,"CPU Count"=0x2,"Build Date"="Dec 1 2008","Constant TSC"=Yes,"Voltage Lowest"=0x4fb,"VID Lowest"=0x2d,"Product Name"="GenericCPUPowerManagement.kext","Override"=No,"Version"="1.1.0","Individual Core Control"=No,"Frequency Lowest"=0x0,"DID Lowest"=0x0,"Timer Timeout"=0xfa,"CPU Driver"=0x0,"Mobile CPU"=No,"Build Time"="03:17:44","Auto Throttle On Startup"=Yes,"Build Config"="Debug","Frequency Highest"=0xd2f,"String"="Intel® Pentium® 4 CPU 3.00GHz","DID Highest"=0x0,"FID Lowest"=0x0,"VID Highest"=0x2d,"FID Highest"=0xf,"P-State Count"=0xf} ioreg -lxw0 -r -c GenericCPUPowerManagement | grep "Status" "Status" = {"Threshold"=0xc8,"Profile"=0x0,"CPU"=({"Load"={"User"=0x54,"Accumulated"=0x80,"System"=0x2c,"Idle"=0x37e,"Nice"=0x0},"Thermal Readout"=0x0,"Frequency"=0xd2f,"Current P-State"=0x0,"DID"=0x0,"VID"=0x2d,"FID"=0xf,"Voltage"=0x4fb,"Exact"=Yes,"Name"="CPU0"},{"Load"={"User"=0x5e,"Accumulated"=0x8f,"System"=0x31,"Idle"=0x36f,"Nice"=0x0},"Thermal Readout"=0x0,"Frequency"=0xd2f,"Current P-State"=0x0,"DID"=0x0,"VID"=0x2d,"FID"=0xf,"Voltage"=0x4fb,"Exact"=Yes,"Name"="CPU1"}),"Timer Timeout (ms)"=0xfa,"P-State Limit"=0x0,"P-State Capability"=0x0,"Current Latency"=0x6,"Kernel Extension Ready"=Yes,"Hysteresis"=0x32,"Auto Throttle Running"=Yes} Generic CPU PMC app displays quite interesting information: - Temperature is fixed in 100% (no compatible thermal processor extension available); - Idle load is always around 25%/each thread); - Voltage is fixed @ 1275mV; - Frequency slider moves but does no changes on frequency at all; Other than that, pretty "useless" at this time, but looking quite cool. Thanks for the hard work. Thumbs up. Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983530 Share on other sites More sharing options...
Superhai Posted December 1, 2008 Author Share Posted December 1, 2008 to SUPERHAI :I tested last 1.1 kext (i wrote about some problems of stepping up/down circle) 1. Works better now ! 2. I looked now in the debug output too Now also some states between 1596 and 2660 are in sight ! I want that in this case - much different core % loads - you do NOT! trottle down to slower MHZ. Meaning: Not using average of 95% load Core1 + 10% Core2 = 55 % Average (would be give to slow MHZ!) You said then it will be computed. But i cant be , or i dont understand it well., wanting not only max. powersaving also very good running CPU if OS X loads Cores with very different CPU load ! Is it possible to do an: IF average differences of all Cores > DIFF_LIMIT (0.3 to 0.5) highest load % = highest load % * 1.0 + DIFF_LIMIT end if I have a hard time to try to follow your thinking. Maybe language problem. The throttler operation for cpus that is not supporting different p-states on the cores is very simple: -> Read CPU load for each CPU -> Find the CPU with highest load -> if highest load is above/below a set value -> throttle up/down. In this way you always have the required power the cpu can push. If you want I can include an option to use cpu load average instead. Using debug kext: - Temperature is fixed in 100% (no compatible thermal processor extension available); - Idle load is always around 25%/each thread); - Voltage is fixed @ 1275mV; - Frequency slider moves but does no changes on frequency at all; Other than that, pretty "useless" at this time, but looking quite cool. Thanks for the hard work. Thumbs up. Yes I need to do some editing for Netburst CPU's because the option for lowest fid is set to 0 as that option came later. Your CPU also miss the on-die thermal reader so that will be a no go. Voltage change is not supported on netburst cpus. The addition of T-States will be of more interest for you I will believe. Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983533 Share on other sites More sharing options...
talisman Posted December 1, 2008 Share Posted December 1, 2008 There is something strange. I uploaded a new version so if you run the debug version it provides a bit more output. If you don't want it to throttle to 600 MHz then limit the lowest P-State. Max CPU voltage is read from cpu internal hardware registers. If you think they are incorrect try to use the override option. Number of P-States is an arbitrary number. It isn't declared to be this or that. In your case from 600 to 2500 you have: 1:600 2:800 3:1000 3:1200 4:1400 5:1600 6:1800 7:2000 8:2200 9:2400 10:2500 if you look carefully you will see that they follow the multiplier. On your CPU which supports non integer bus ratios as well, you could theoretically add 8 more steps in there. You could also create P-States just based on voltage values. Ok... I did read your manual and ended up editing the plist. Should have done that before asking... sorry about that.... When I edited the plist I noted the following: 1. I can make the cpu throttle to a lower limit of 800 MHz. ----Edit---- 2. The pstates I have are 1:600 2:800 3:1000 4:1200 5:1400 6:1700 7:1900 8:2100 9:2300 10:2500 (before plist edit). This was also true after the edit just that I did not have state 1. 3. Even after I set the voltage overide option I cannot get either the min or the max, ie, the min and max as reported by the commandline app is still 1025 and 1137 when I do a ./gcpmcontrol voltage while running some programs to load the CPU. 4. Regardless of any mods ./gcpmcontrol all reports the same thing that I pasted in my previous post. If you notice, after 1400 MHz it is using the multiplier+0.5 states. I don't know if that is normal.... Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983537 Share on other sites More sharing options...
Superhai Posted December 1, 2008 Author Share Posted December 1, 2008 Interesting... I use the Modbin kernel (the one in Kalyway 10.5.3 ComboUpdate).Other strange thing too, in System Profiler i read 6Mo L2 cache for my Q9550 in lieu of 12Mo (other values are correct) same thing with my previous PIV 530 3ghz (512 in lieu of 1024 Ko). EDIT: A "mini-freeze" (mouse and screen non responsive during ~20 sec.) occured with the last version, this time with MPlayer OSX Extended (http://mplayerosx.sttz.ch/), when attempting to switch an xvid to fullscreen during play. This don't happen with Quicktime. UPDATE: No way. A new freeze occured ~3 hours after boot, this time i was converting a video with avidemux. Without the kext, everything worked fine during all night. I think I will add option back to limit P-States below 1000MHz, I believed they would have fixed this as the macbookpro can go as low as 800MHz. But that causes same audio problems on apples own machines. Seem like the fix apple did was to limit so it is not running the low P-States. As I have no CPUs that are able to run at below 1000MHz I have not experienced the problem. 2. The pstates I have are 1:600 2:800 3:1000 4:1300 5:1500 6:1700 7:1900 8:2100 9:2300 10:2500 (before plist edit). This was also true after the edit just that I did not have state 1.3. Even after I set the voltage overide option I cannot get either the min or the max, ie, the min and max as reported by the commandline app is still 1025 and 1137 when I do a ./gcpmcontrol voltage while running some programs to load the CPU. If you notice, after 1000 MHz it is using the multiplier+0.5 states. I don't know if that is normal.... The 0.5 states is nothing to worry about. If it is not changing after you overode the voltage it is because the CPU locks the higher voltage away. There are four public variants of the T9300 from intel, each with different voltage ranges. I guess your are a SLAYY which have voltage limit from 1050 mV to 1137 mV. Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983542 Share on other sites More sharing options...
talisman Posted December 1, 2008 Share Posted December 1, 2008 The 0.5 states is nothing to worry about. If it is not changing after you overode the voltage it is because the CPU locks the higher voltage away. There are four public variants of the T9300 from intel, each with different voltage ranges. I guess your are a SLAYY which have voltage limit from 1050 mV to 1137 mV. Cool... I can rest in peace now...!!! by the way... it volts down to 1000 mV when I have all the pstates enabled. Let me know if you think its safer for me to limit the volts to 1050 mV. Thanks a heap Link to comment https://www.insanelymac.com/forum/topic/123774-new-version-11-of-genericcpupowermanagement/page/20/#findComment-983553 Share on other sites More sharing options...
Recommended Posts