Contribute
Register

Quick Guide to Generate a SSDT for CPU Power Management

No matter what I do, I can't get any additional states. I actually seem to lose some in fact. I go from 8, 40, 41, 42, 43, 44,45 with a haswell 4790k to like 8, 43, 44, 45. I really wanted to get it to generate some more between 8-40 so it isn't constantly idling at such a needlessly high frequency. 8 state is rarely used when using computer and 40 is not necessary for just surfing facebook. plus any time ANY process fires up or does something, it spikes from 8 to 40 just for that. So have to figure out why it generates so few states and actually loses some.
 
Last edited:
Plz help me to check my speedstep is ok ?
C573644_B_B13_D_4_E16_A6_C7_1_E0808_D19_A62.jpg

7_C94385_D_25_DB_41_DE_8812_951_B9_FAE524_C.jpg
 
Hello everybody,

for any of those still interested in a Mac Os X 10.11.6 build using Clover and the Asus Z97I-PLUS mini-ITX Mobo with Haswell processors I will post here the difference in performance BEFORE and AFTER properly configuring CPU power management by creating a custom SSDT with Piker Alpha's ssdtPRGen script for you processor AND configuring in the ASUS Uefi Bios an interesting option: in /AI Tweaker/ set CPU Core Ratio: Sync All Cores.

As you can see from the IPG graphs the processor runs a lot better and also the scores in Cinebench are reflecting this.
Of course with different boards/processor combinations you mileage may vary, but in my opinion it is ALWAYS a plus if you properly configure CPU power management.

i7-4790 Cinebench 15 (Custom Power SSDT+all cores in sync enabled in bios).png i7-4790 Cinebench 15 before power management.png iHack i7-4790 Z97 Intel® Power Gadget Graph During Cinebench 15 no power management.png iHack i7-4790t IPG Graph Cinebench 15 (Custom Power SSDT+all cores in sync enabled in bios).png
 
Hello everybody,

for any of those still interested in a Mac Os X 10.11.6 build using Clover and the Asus Z97I-PLUS mini-ITX Mobo with Haswell processors I will post here the difference in performance BEFORE and AFTER properly configuring CPU power management by creating a custom SSDT with Piker Alpha's ssdtPRGen script for you processor AND configuring in the ASUS Uefi Bios an interesting option: in /AI Tweaker/ set CPU Core Ratio: Sync All Cores.

As you can see from the IPG graphs the processor runs a lot better and also the scores in Cinebench are reflecting this.
Of course with different boards/processor combinations you mileage may vary, but in my opinion it is ALWAYS a plus if you properly configure CPU power management.

View attachment 279567 View attachment 279568 View attachment 279569 View attachment 279570

Intel Power Gadget isn't reliable. To verify that Native Powermanagement is implemented verify that X86latformPlugin is loaded in ioreg. Recommend running AppleIntelInfo.kext to verify the P & C States. Another thing P & C states are limited to per BIOS settings. Look at post #1 How to Test Power Management.
 
Plz help me to check my speedstep is ok ?
C573644_B_B13_D_4_E16_A6_C7_1_E0808_D19_A62.jpg

7_C94385_D_25_DB_41_DE_8812_951_B9_FAE524_C.jpg

P & C States looks good. Note P & C states are limited to Per BIOS settings. Verify that X86Platform is loaded. CPU is clocking down which looks fine.
 
Intel Power Gadget isn't reliable. To verify that Native Powermanagement is implemented verify that X86latformPlugin is loaded in ioreg. Recommend running AppleIntelInfo.kext to verify the P & C States. Another thing P & C states are limited to per BIOS settings. Look at post #1 How to Test Power Management.

Thank You VioletDragon

I am am working right now but I did check with ioreg and AppleIntelInfo.kext. I will post results whenever possible.

Thanks
 
Intel Power Gadget isn't reliable. To verify that Native Powermanagement is implemented verify that X86latformPlugin is loaded in ioreg. Recommend running AppleIntelInfo.kext to verify the P & C States. Another thing P & C states are limited to per BIOS settings. Look at post #1 How to Test Power Management.

Hello VioletDragon

this are the ioreg results and the AppleIntelInfo.kext cat results in terminal:


ioreg.png


Code:
Last login: Wed Sep 20 19:38:08 on console
iHack:~ mini$ sudo -s
Password:
bash-3.2# chown -R 0:0 ~/Desktop/AppleIntelInfo.kext
bash-3.2# chmod -R 755 ~/Desktop/AppleIntelInfo.kext
bash-3.2# kextload ~/Desktop/AppleIntelInfo.kext
bash-3.2# cat /tmp/AppleIntelInfo.dat

AppleIntelInfo.kext v1.4 Copyright © 2012-2015 Pike R. Alpha. All rights reserved

Settings:
------------------------------------
logMSRs............................: 1
logIGPU............................: 0
logIntelRegs.......................: 1
logCStates.........................: 1
logIPGStyle........................: 1
InitialTSC.........................: 0x1baed0deed2
MWAIT C-States.....................: 270624

Model Specific Regiters
------------------------------------
MSR_CORE_THREAD_COUNT......(0x35)  : 0x40008
MSR_PLATFORM_INFO..........(0xCE)  : 0x80838F3012400
MSR_PMG_CST_CONFIG_CONTROL.(0xE2)  : 0x0
MSR_PMG_IO_CAPTURE_BASE....(0xE4)  : 0x0
IA32_MPERF.................(0xE7)  : 0x2B575F4634
IA32_APERF.................(0xE8)  : 0x26DC974121
MSR_FLEX_RATIO.............(0x194) : 0x10000
MSR_IA32_PERF_STATUS.......(0x198) : 0x215000002400
MSR_IA32_PERF_CONTROL......(0x199) : 0x2800
IA32_CLOCK_MODULATION......(0x19A) : 0x0
IA32_THERM_STATUS..........(0x19C) : 0x88390000
IA32_MISC_ENABLES..........(0x1A0) : 0x850089
MSR_MISC_PWR_MGMT..........(0x1AA) : 0x400001
MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x28282828
IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x5
MSR_POWER_CTL..............(0x1FC) : 0x4005F
MSR_RAPL_POWER_UNIT........(0x606) : 0xA0E03
MSR_PKG_POWER_LIMIT........(0x610) : 0x42FFF8001AFFF8
MSR_PKG_ENERGY_STATUS......(0x611) : 0x81334BD
MSR_PKG_POWER_INFO.........(0x614) : 0x2A0
MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x10141400001FFF
MSR_PP0_POWER_LIMIT........(0x638) : 0x0
MSR_PP0_ENERGY_STATUS......(0x639) : 0x1E32243
MSR_PP0_POLICY.............(0x63a) : 0x0
MSR_CONFIG_TDP_NOMINAL.....(0x648) : 0x24
MSR_CONFIG_TDP_LEVEL1......(0x649) : 0x0
MSR_CONFIG_TDP_LEVEL2......(0x64a) : 0x0
MSR_CONFIG_TDP_CONTROL.....(0x64b) : 0x80000000
MSR_TURBO_ACTIVATION_RATIO.(0x64c) : 0x0
MSR_PKGC3_IRTL.............(0x60a) : 0x0
MSR_PKGC6_IRTL.............(0x60b) : 0x0
MSR_PKGC7_IRTL.............(0x60c) : 0x0
MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x0
MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x0
MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
IA32_TSC_DEADLINE..........(0x6E0) : 0x1BAEE65AB2B

CPU Ratio Info:
------------------------------------
CPU Low Frequency Mode.............: 800 MHz
CPU Maximum non-Turbo Frequency....: 3600 MHz
CPU Maximum Turbo Frequency........: 4000 MHz
CPU P-States [ (8) 32 40 ]
CPU C3-Cores [ 1 4 5 6 ]
CPU C6-Cores [ 0 2 3 4 5 ]
CPU C7-Cores [ 0 1 4 6 7 ]
CPU C3-Cores [ 0 1 4 5 6 ]
CPU C6-Cores [ 0 1 2 3 4 5 7 ]
CPU P-States [ (8) 25 32 40 ]
CPU C3-Cores [ 0 1 3 4 5 6 ]
CPU C6-Cores [ 0 1 2 3 4 5 6 7 ]
CPU C7-Cores [ 0 1 2 4 6 7 ]
CPU P-States [ (8) 25 32 36 40 ]
CPU C3-Cores [ 0 1 2 3 4 5 6 7 ]
CPU C7-Cores [ 0 1 2 3 4 5 6 7 ]
CPU P-States [ (8) 24 25 32 36 40 ]
CPU P-States [ (8) 20 24 25 32 36 40 ]
CPU P-States [ (8) 20 24 25 30 32 36 40 ]
CPU P-States [ 8 20 23 24 25 30 32 (36) 40 ]
CPU P-States [ 8 20 23 24 25 28 30 32 (36) 40 ]
CPU P-States [ (8) 18 20 23 24 25 28 30 32 36 40 ]
CPU P-States [ (8) 18 19 20 23 24 25 28 30 32 36 40 ]
CPU P-States [ 8 18 19 20 23 24 25 26 28 30 32 (36) 40 ]
bash-3.2#
 
Hello VioletDragon

this are the ioreg results

sorry, this the right image from my machine (Z97I-PLUS | i7 4790 | GTX 960 Overclocked)

ioreg.png
 
Back
Top