Contribute
Register

Quick Guide to Generate a SSDT for CPU Power Management

Just tried to test the Power Management on my X99 / 5820k built.
Followed the instructions but after this ...
Code:
[COLOR=#000000]kextload ~/Desktop/AppleIntelInfo.kext[/COLOR]

The machine immediately rebooted...
Any ideas what happened or what's the problem? :(

Same here. Never been able to find out whether it works or not...
 
SO today i have generatet a ssdt with the above script.

Here are two pics. The first is bevor the patch .

What you guys think about it ?
The first one looks better because it goes up to 40. The second only goes to 39. There should be a 41 if that's the turbo frequency. Did you run a CPU benchmark after loading the kext and before dumping the output? Also, try quitting every APP and close every window to see if it will idle to 8 instead of 10. I would use a benchmark to see which is faster, with or without the SSDT.
 
WORKED GREAT ... my sandy bridge hacintosh became very stable. Sleep related issues and no audio after sleep was fixed !!
Thank you for support....
 
Any one got this when load kext? plz help me fix this :(
View attachment 238811

Same here. Never been able to find out whether it works or not...

try kextutil instead of kextload (as per instructions in the op).

It might dump more info, guy that got the error. And guy from the reboot, did you try googling that? I dunno really, would have freaked my **** out if my machine had done that lol

mine looks like:
CPU Ratio Info:
------------------------------------------
Base Clock Frequency (BLCK)............. : 100 MHz
Maximum Efficiency Ratio/Frequency.......: 8 ( 800 MHz)
Maximum non-Turbo Ratio/Frequency........: 40 (4000 MHz)
Maximum Turbo Ratio/Frequency............: 42 (4200 MHz)

IGPU Info:
------------------------------------------
IGPU Current Frequency...................: 0 MHz
IGPU Minimum Frequency...................: 350 MHz
IGPU Maximum Non-Turbo Frequency.........: 350 MHz
IGPU Maximum Turbo Frequency.............: 1150 MHz
IGPU Maximum limit.......................: 1150 MHz

P-State ratio * 100 = Frequency in MHz
------------------------------------------
CPU P-States [ 24 (40) ] iGPU P-States [ ]
CPU C3-Cores [ 0 1 6 7 ]
CPU C6-Cores [ 1 3 4 5 6 7 ]
CPU P-States [ 24 34 (40) ] iGPU P-States [ ]
CPU C3-Cores [ 0 1 2 3 6 7 ]
CPU C3-Cores [ 0 1 2 3 4 5 6 7 ]
CPU C6-Cores [ 0 1 3 4 5 6 7 ]
CPU P-States [ 23 24 34 (40) ] iGPU P-States [ ]
CPU P-States [ (8) 23 24 25 34 40 ] iGPU P-States [ ]
CPU C6-Cores [ 0 1 2 3 4 5 6 7 ]
CPU P-States [ 8 23 24 25 33 34 (40) ] iGPU P-States [ ]
CPU P-States [ (8) 23 24 25 31 33 34 40 ] iGPU P-States [ ]
CPU P-States [ (8) 23 24 25 31 32 33 34 40 ] iGPU P-States [ ]
CPU P-States [ 8 22 23 24 25 31 32 33 34 (40) ] iGPU P-States [ ]
CPU P-States [ 8 22 23 24 25 31 32 33 34 (40) ] iGPU P-States [ ]
CPU P-States [ 8 10 22 23 24 25 31 32 33 34 (40) ] iGPU P-States [ ]
CPU P-States [ 8 10 19 22 23 24 25 31 32 33 34 (40) ] iGPU P-States [ ]
CPU P-States [ (8) 10 19 22 23 24 25 31 32 33 34 35 40 ] iGPU P-States [ ]
CPU P-States [ 8 10 19 22 23 24 25 26 31 32 33 34 35 (40) ] iGPU P-States [ ]
CPU P-States [ 8 10 19 21 22 23 24 25 26 31 32 33 34 35 (40) ] iGPU P-States [ ]
CPU P-States [ 8 10 19 20 21 22 23 24 25 26 31 32 33 34 35 (40) ] iGPU P-States [ ]
CPU P-States [ (8) 10 19 20 21 22 23 24 25 26 31 32 33 34 35 40 ] iGPU P-States [ (21) ]
CPU P-States [ 8 10 19 20 21 22 23 24 25 26 31 32 33 34 35 36 (40) ] iGPU P-States [ 21 ]
CPU P-States [ 8 10 19 20 21 22 23 24 25 26 28 31 32 33 34 35 36 (40) ] iGPU P-States [ 21 ]
CPU P-States [ 8 10 19 20 21 22 23 24 25 26 28 31 32 33 34 35 36 38 (40) ] iGPU P-States [ (21) ]
CPU P-States [ 8 10 19 20 21 22 23 24 25 26 27 28 31 32 33 34 35 36 38 (40) ] iGPU P-States [ 21 ]
CPU P-States [ 8 10 19 20 21 22 23 24 25 26 27 28 31 32 33 34 35 36 37 38 (40) ] iGPU P-States [ 21 ]
CPU P-States [ 8 10 19 20 21 22 23 24 25 26 27 28 29 31 32 33 34 35 36 37 38 (40) ] iGPU P-States [ 21 ]
CPU P-States [ 8 10 19 20 21 22 23 24 25 26 27 28 29 31 32 33 34 35 36 37 38 40 (42) ] iGPU P-States [ 21 ]

edit: after testing this a bit, I noticed it goes up to x42 sometimes, but vast majority of the time it sits on x8 or x40. I look the frequency in hardware monitor. Also had a sleepwake failure tonight, not sure if related. I'm still not satisfied with the power management bc I want to see something else other than x8 or x40...
 
Last edited:
I tried this and all went smooth but my computer still will not go into deep sleep.
Also, now I get a screen flicker or blink about every 2 to 4 minutes. The blink is similar but not the same as the Screen Flash option in the Accessbility Pref Pane.
Could this revision to my system cause this?
 
Does it make any sence to do a SSDT for new Kalby lake Processor? Or it better to waite oficcial apple support?
 
try kextutil instead of kextload (as per instructions in the op).

It might dump more info, guy that got the error. And guy from the reboot, did you try googling that? I dunno really, would have freaked my **** out if my machine had done that lol

mine looks like:


edit: after testing this a bit, I noticed it goes up to x42 sometimes, but vast majority of the time it sits on x8 or x40. I look the frequency in hardware monitor. Also had a sleepwake failure tonight, not sure if related. I'm still not satisfied with the power management bc I want to see something else other than x8 or x40...

Tried kextutil as well. Same error. Maybe it has a problem with the X99 platform...? Not sure.
 
@RehabMan

Why I am not seeing C3?

Code:
Last login: Wed Apr 12 18:21:59 on console
Murats-Mac:~ muratozgul$ 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 v2.3 Copyright © 2012-2017 Pike R. Alpha. All rights reserved.
enableHWP................................: 0

Settings:
------------------------------------------
logMSRs..................................: 1
logIGPU..................................: 1
logCStates...............................: 1
logIPGStyle..............................: 1
InitialTSC...............................: 0xf1b51cb48d (25 MHz)
MWAIT C-States...........................: 1319200

Processor Brandstring....................: Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz

Processor Signature..................... : 0x506E3
------------------------------------------
- Family............................... : 6
- Stepping............................. : 3
- Model................................ : 0x5E (94)

Model Specific Registers (MSRs)
------------------------------------------

MSR_CORE_THREAD_COUNT............(0x35)  : 0xFFFFFF80B511A700
------------------------------------------
- Core Count........................... : 4
- Thread Count......................... : 8

MSR_PLATFORM_INFO................(0xCE)  : 0x80838F1012800
------------------------------------------
- Maximum Non-Turbo Ratio.............. : 0x28 (4000 MHz)
- Ratio Limit for Turbo Mode........... : 1 (programmable)
- TDP Limit for Turbo Mode............. : 1 (programmable)
- Low Power Mode Support............... : 0 (LMP not supported)
- Number of ConfigTDP Levels........... : 0 (only base TDP level available)
- Maximum Efficiency Ratio............. : 8
- Minimum Operating Ratio.............. : 8

MSR_PMG_CST_CONFIG_CONTROL.......(0xE2)  : 0x0
------------------------------------------
- I/O MWAIT Redirection Enable......... : 0 (not enabled)
- CFG Lock............................. : 0 (MSR not locked)
- C3 State Auto Demotion............... : 0 (disabled/unsupported)
- C1 State Auto Demotion............... : 0 (disabled/unsupported)
- C3 State Undemotion.................. : 0 (disabled/unsupported)
- C1 State Undemotion.................. : 0 (disabled/unsupported)
- Package C-State Auto Demotion........ : 0 (disabled/unsupported)
- Package C-State Undemotion........... : 0 (disabled/unsupported)

MSR_PMG_IO_CAPTURE_BASE..........(0xE4)  : 0x0
- C-state Range........................ : 0 (C-States not included, I/O MWAIT redirection not enabled)

IA32_MPERF.......................(0xE7)  : 0x3B43915959
IA32_APERF.......................(0xE8)  : 0x37D67D1787

MSR_FLEX_RATIO...................(0x194) : 0xE0000

MSR_IA32_PERF_STATUS.............(0x198) : 0x2C2400002A00
------------------------------------------
- Current Performance State Value...... : 0x2A00 (4200 MHz)

MSR_IA32_PERF_CONTROL............(0x199) : 0x2A00
------------------------------------------
- Target performance State Value....... : 0x2A00 (4200 MHz)
- Intel Dynamic Acceleration........... : 0 (IDA engaged)

IA32_CLOCK_MODULATION............(0x19A) : 0x0

IA32_THERM_INTERRUPT.............(0x19B) : 0x10
------------------------------------------
- High-Temperature Interrupt Enable.... : 0 (disabled)
- Low-Temperature Interrupt Enable..... : 0 (disabled)
- PROCHOT# Interrupt Enable............ : 0 (disabled)
- FORCEPR# Interrupt Enable............ : 0 (disabled)
- Critical Temperature Interrupt Enable : 1 (enabled)
- Threshold #1 Value................... : 0
- Threshold #1 Interrupt Enable........ : 0 (disabled)
- Threshold #2 Value................... : 0
- Threshold #2 Interrupt Enable........ : 0 (disabled)
- Power Limit Notification Enable...... : 0 (disabled)

IA32_THERM_STATUS................(0x19C) : 0x884D0000
------------------------------------------
- Thermal Status....................... : 0
- Thermal Log.......................... : 0
- PROCHOT # or FORCEPR# event.......... : 0
- PROCHOT # or FORCEPR# log............ : 0
- Critical Temperature Status.......... : 0
- Critical Temperature log............. : 0
- Thermal Threshold #1 Status.......... : 0
- Thermal Threshold #1 log............. : 0
- Thermal Threshold #2 Status.......... : 0
- Thermal Threshold #2 log............. : 0
- Power Limitation Status.............. : 0
- Power Limitation log................. : 0
- Current Limit Status................. : 0
- Current Limit log.................... : 0
- Cross Domain Limit Status............ : 0
- Cross Domain Limit log............... : 0
- Digital Readout...................... : 77
- Resolution in Degrees Celsius........ : 1
- Reading Valid........................ : 1 (valid)

MSR_THERM2_CTL...................(0x19D) : 0x0

IA32_MISC_ENABLES................(0x1A0) : 0x850089
------------------------------------------
- Fast-Strings......................... : 1 (enabled)
- FOPCODE compatibility mode Enable.... : 0
- Automatic Thermal Control Circuit.... : 1 (enabled)
- Split-lock Disable................... : 0
- Performance Monitoring............... : 1 (available)
- Bus Lock On Cache Line Splits Disable : 0
- Hardware prefetch Disable............ : 0
- Processor Event Based Sampling....... : 0 (PEBS supported)
- GV1/2 legacy Enable.................. : 0
- Enhanced Intel SpeedStep Technology.. : 1 (enabled)
- MONITOR FSM.......................... : 1 (MONITOR/MWAIT supported)
- Adjacent sector prefetch Disable..... : 0
- CFG Lock............................. : 0 (MSR not locked)
- xTPR Message Disable................. : 1 (disabled)

MSR_TEMPERATURE_TARGET...........(0x1A2) : 0x64140D
------------------------------------------
- Turbo Attenuation Units.............. : 13 (122.1 micro-Seconds)
- Temperature Target................... : 100
- TCC Activation Offset................ : 0

MSR_MISC_PWR_MGMT................(0x1AA) : 0x401CC1
------------------------------------------
- EIST Hardware Coordination........... : 1 (hardware coordination disabled)
- Energy/Performance Bias support...... : 1
- Energy/Performance Bias.............. : 0 (disabled/MSR not visible to software)
- Thermal Interrupt Coordination Enable : 1 (thermal interrupt routed to all cores)

MSR_TURBO_RATIO_LIMIT............(0x1AD) : 0x2A2A2A2A
------------------------------------------
- Maximum Ratio Limit for C01.......... : 2A (4200 MHz)
- Maximum Ratio Limit for C02.......... : 2A (4200 MHz)
- Maximum Ratio Limit for C03.......... : 2A (4200 MHz)
- Maximum Ratio Limit for C04.......... : 2A (4200 MHz)

IA32_ENERGY_PERF_BIAS............(0x1B0) : 0x1
------------------------------------------
- Power Policy Preference...............: 1 (highest performance)

MSR_POWER_CTL....................(0x1FC) : 0x3C005F
------------------------------------------
- Bi-Directional Processor Hot..........: 1 (enabled)
- C1E Enable............................: 1 (enabled)

MSR_RAPL_POWER_UNIT..............(0x606) : 0xA0E03
------------------------------------------
- Power Units.......................... : 3 (1/8 Watt)
- Energy Status Units.................. : 14 (61 micro-Joules)
- Time Units .......................... : 10 (976.6 micro-Seconds)

MSR_PKG_POWER_LIMIT..............(0x610) : 0x42FFFF001BFFFF
------------------------------------------
- Package Power Limit #1............... : 4095 Watt
- Enable Power Limit #1................ : 1 (enabled)
- Package Clamping Limitation #1....... : 1 (allow going below OS-requested P/T state during Time Window for Power Limit #1)
- Time Window for Power Limit #1....... : 13 (20480 milli-Seconds)
- Package Power Limit #2............... : 4095 Watt
- Enable Power Limit #2................ : 1 (enabled)
- Package Clamping Limitation #2....... : 0 (disabled)
- Time Window for Power Limit #2....... : 33 (10 milli-Seconds)
- Lock................................. : 0 (MSR not locked)

MSR_PKG_ENERGY_STATUS............(0x611) : 0x2F6218E
------------------------------------------
- Total Energy Consumed................ : 3032 Joules (Watt = Joules / seconds)

MSR_PP1_POWER_LIMIT..............(0x640) : 0x0

MSR_PP1_ENERGY_STATUS............(0x641) : 0x5BF6A
------------------------------------------
- Total Energy Consumed................ : 22 Joules (Watt = Joules / seconds)

MSR_PP1_POLICY...................(0x642) : 0x18
------------------------------------------
- Priority Level....................... : 24

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

MSR_PLATFORM_ENERGY_COUNTER......(0x64D) : 0x0 (not supported by hardware/BIOS)

MSR_PPERF........................(0x64E) : 0x35174F2035
------------------------------------------
- Hardware workload scalability........ : 228024328245

MSR_CORE_PERF_LIMIT_REASONS......(0x64F) : 0x0

IA32_TSC_DEADLINE................(0x6E0) : 0xF1BF130C86

CPU Ratio Info:
------------------------------------------
Base Clock Frequency (BLCK)............. : 100 MHz
Maximum Efficiency Ratio/Frequency.......:  8 ( 800 MHz)
Maximum non-Turbo Ratio/Frequency........: 40 (4000 MHz)
Maximum Turbo Ratio/Frequency............: 42 (4200 MHz)

IGPU Info:
------------------------------------------
IGPU Current Frequency...................:    0 MHz
IGPU Minimum Frequency...................:  350 MHz
IGPU Maximum Non-Turbo Frequency.........:  350 MHz
IGPU Maximum Turbo Frequency.............: 1150 MHz
IGPU Maximum limit.......................: 1150 MHz

P-State ratio * 100 = Frequency in MHz
------------------------------------------
CPU P-States [ 38 (40) 42 ] iGPU P-States [ ]
CPU C6-Cores [ 0 1 5 6 ]
CPU P-States [ 32 38 40 (42) ] iGPU P-States [ ]
CPU C6-Cores [ 0 1 2 3 5 6 7 ]
CPU P-States [ 29 32 38 (40) 42 ] iGPU P-States [ ]
CPU C6-Cores [ 0 1 2 3 4 5 6 7 ]
CPU P-States [ (8) 27 29 32 38 40 42 ] iGPU P-States [ ]
CPU P-States [ 8 18 27 29 32 38 (40) 42 ] iGPU P-States [ ]
CPU P-States [ (8) 18 22 27 29 32 38 40 42 ] iGPU P-States [ ]
CPU P-States [ (8) 18 22 27 29 31 32 38 40 42 ] iGPU P-States [ ]
CPU P-States [ (8) 18 22 23 27 29 31 32 38 40 42 ] iGPU P-States [ ]
bash-3.2#

Attached ioreg and Clover Folder without themes.
 

Attachments

  • Archive.zip
    3 MB · Views: 90
ssdtPRGen.sh v0.9 Copyright (c) 2011-2012 by † RevoGirl

v6.6 Copyright (c) 2013 by † Jeroen

v15.6 Copyright (c) 2013-2017 by Pike R. Alpha

-----------------------------------------------------------

Bugs > https://github.com/Piker-Alpha/ssdtPRGen.sh/issues <


gDataPath: /Users/alistairovereem/Library/ssdtPRGen/Data

System information: Mac OS X 10.12.4 (16E195)

Brandstring 'Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz'


Error: Unknown processor model ...

Visit http://ark.intel.com to gather the required data:

Processor Number

TDP

Low Frequency Mode (use AppleIntelInfo.kext)

Base Frequency

Max Turbo Frequency

Cores

Threads

Aborting ...

Done.



I follow the steps but this error appeared. What did i do wrong?
 
ssdtPRGen.sh v0.9 Copyright (c) 2011-2012 by † RevoGirl

v6.6 Copyright (c) 2013 by † Jeroen

v15.6 Copyright (c) 2013-2017 by Pike R. Alpha

-----------------------------------------------------------

Bugs > https://github.com/Piker-Alpha/ssdtPRGen.sh/issues <


gDataPath: /Users/alistairovereem/Library/ssdtPRGen/Data

System information: Mac OS X 10.12.4 (16E195)

Brandstring 'Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz'


Error: Unknown processor model ...

Visit http://ark.intel.com to gather the required data:

Processor Number

TDP

Low Frequency Mode (use AppleIntelInfo.kext)

Base Frequency

Max Turbo Frequency

Cores

Threads

Aborting ...

Done.



I follow the steps but this error appeared. What did i do wrong?

For newer CPUs, you need to use the beta branch.
I wrote about it in my laptop PM guide: https://www.tonymacx86.com/threads/guide-native-power-management-for-laptops.175801/
 
Back
Top