Contribute
Register

Quick Guide to Generate a SSDT for CPU Power Management

I notice that it also generates a DSDT.aml, is this of any use? I am currently running DSDT free with UEFI BIOS.
 
Using your method I got the following output (cpu is 4770k)

Code:
[FONT=Menlo]CPU Ratio Info:[/FONT][FONT=Menlo]------------------------------------[/FONT]
[FONT=Menlo]CPU Low Frequency Mode.............: 800 MHz[/FONT]
[FONT=Menlo]CPU Maximum non-Turbo Frequency....: 3500 MHz[/FONT]
[FONT=Menlo]CPU Maximum Turbo Frequency........: 3900 MHz[/FONT]
[FONT=Menlo]
[/FONT]
[FONT=Menlo]IGPU Info:[/FONT]
[FONT=Menlo]------------------------------------[/FONT]
[FONT=Menlo]IGPU Current Frequency.............:  400 MHz[/FONT]
[FONT=Menlo]IGPU Minimum Frequency.............:  200 MHz[/FONT]
[FONT=Menlo]IGPU Maximum Non-Turbo Frequency...:  350 MHz[/FONT]
[FONT=Menlo]IGPU Maximum Turbo Frequency.......: 1250 MHz[/FONT]
[FONT=Menlo]IGPU Maximum limit.................: No Limit[/FONT]
[FONT=Menlo]
[/FONT]
[FONT=Menlo]CPU P-States [ (39) ] iGPU P-States [ (8) ][/FONT]
[FONT=Menlo]CPU C3-Cores [ 0 1 2 5 ][/FONT]
[FONT=Menlo]CPU C6-Cores [ 0 1 2 3 5 ][/FONT]
[FONT=Menlo]CPU C7-Cores [ 1 2 3 5 7 ][/FONT]
[FONT=Menlo]CPU C3-Cores [ 0 1 2 4 5 7 ][/FONT]
[FONT=Menlo]CPU C6-Cores [ 0 1 2 3 4 5 ][/FONT]
[FONT=Menlo]CPU C7-Cores [ 0 1 2 3 4 5 6 7 ][/FONT]
[FONT=Menlo]CPU C3-Cores [ 0 1 2 4 5 6 7 ][/FONT]
[FONT=Menlo]CPU C3-Cores [ 0 1 2 3 4 5 6 7 ][/FONT]
[FONT=Menlo]CPU P-States [ 37 (39) ] iGPU P-States [ (8) ][/FONT]
[FONT=Menlo]CPU P-States [ (8) 37 39 ] iGPU P-States [ (8) ][/FONT]
[FONT=Menlo]CPU P-States [ 8 (35) 37 38 39 ] iGPU P-States [ (8) ]
[/FONT]

Does this seem right?

Before running the kext I got

Code:
[FONT=Menlo]CPU P-States [ (8) 32 39 ] iGPU P-States [ (8) ][/FONT]
[FONT=Menlo]CPU C3-Cores [ 0 2 3 6 ][/FONT]
[FONT=Menlo]CPU C6-Cores [ 0 1 3 4 5 ][/FONT]
[FONT=Menlo]CPU C7-Cores [ 0 1 3 4 7 ][/FONT]
[FONT=Menlo]CPU C3-Cores [ 0 1 2 3 4 6 7 ][/FONT]
[FONT=Menlo]CPU C6-Cores [ 0 1 2 3 4 5 6 7 ][/FONT]
[FONT=Menlo]CPU C7-Cores [ 0 1 2 3 4 5 6 7 ][/FONT]
[FONT=Menlo]CPU P-States [ (8) 32 35 39 ] iGPU P-States [ (8) ][/FONT]
[FONT=Menlo]CPU C3-Cores [ 0 1 2 3 4 5 6 7 ][/FONT]
[FONT=Menlo]CPU P-States [ (8) 30 32 35 39 ] iGPU P-States [ (8) ][/FONT]
[FONT=Menlo]CPU P-States [ (8) 30 31 32 35 39 ] iGPU P-States [ (8) ][/FONT]

Another thing is I get 4 versions of SSDT.aml, i.e. SSDT-3.aml, SSDT-2.aml, SSDT-1.aml and SSDT.aml
Which to choose?
 
What are the correct settings in config.plist?
What do I need to check/uncheck in Clover Configurator
 
The benefits are that the are more states, so if your desktop is idle it will be at 16 (1.6GHz) or when your rendering a video it will be at 37(3.7GHz) if you did not generate an SSDT it would be stuck at one state.

Thanks man, now I know why I must have this for.
:thumbup:
 
With i7 3770k :

Settings:
------------------------------------
logMSRs............................: 1
logIGPU............................: 0
logIntelRegs.......................: 1
logCStates.........................: 1
logIPGStyle........................: 1
InitialTSC.........................: 0x127d909ad18
MWAIT C-States.....................: 4384

Model Specific Regiters
------------------------------------
MSR_CORE_THREAD_COUNT......(0x35) : 0x40008
MSR_PLATFORM_INFO..........(0xCE) : 0x81010F0012300
MSR_PMG_CST_CONFIG_CONTROL.(0xE2) : 0x1E000007
MSR_PMG_IO_CAPTURE_BASE....(0xE4) : 0x10414
IA32_MPERF.................(0xE7) : 0x3CE796C5F2
IA32_APERF.................(0xE8) : 0x3F5E5FD6D7
MSR_FLEX_RATIO.............(0x194) : 0xE0000
MSR_IA32_PERF_STATUS.......(0x198) : 0x23B500002700
MSR_IA32_PERF_CONTROL......(0x199) : 0x2700
IA32_CLOCK_MODULATION......(0x19A) : 0x0
IA32_THERM_STATUS..........(0x19C) : 0x88480000
IA32_MISC_ENABLES..........(0x1A0) : 0x850089
MSR_MISC_PWR_MGMT..........(0x1AA) : 0x400001
MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x25262727
IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x1
MSR_POWER_CTL..............(0x1FC) : 0x4005F
MSR_RAPL_POWER_UNIT........(0x606) : 0xA1003
MSR_PKG_POWER_LIMIT........(0x610) : 0xA58000009F40
MSR_PKG_ENERGY_STATUS......(0x611) : 0x1BB59E07
MSR_PKG_POWER_INFO.........(0x614) : 0x1E00268
MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x1814149400000960
MSR_PP0_POWER_LIMIT........(0x638) : 0xA580
MSR_PP0_ENERGY_STATUS......(0x639) : 0x12EFF222
MSR_PP0_POLICY.............(0x63a) : 0x0
MSR_CONFIG_TDP_NOMINAL.....(0x648) : 0x23
MSR_CONFIG_TDP_LEVEL1......(0x649) : 0x1E0000000000000
MSR_CONFIG_TDP_LEVEL2......(0x64a) : 0x1E0000000000000
MSR_CONFIG_TDP_CONTROL.....(0x64b) : 0x80000000
MSR_TURBO_ACTIVATION_RATIO.(0x64c) : 0x0
MSR_PKGC3_IRTL.............(0x60a) : 0x883B
MSR_PKGC6_IRTL.............(0x60b) : 0x8850
MSR_PKGC7_IRTL.............(0x60c) : 0x8857
MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x2C8B0D6FBC
MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x208995B849
MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x1A142DF144
MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
IA32_TSC_DEADLINE..........(0x6E0) : 0x1286149ECBC

CPU Ratio Info:
------------------------------------
CPU Low Frequency Mode.............: 1600 MHz
CPU Maximum non-Turbo Frequency....: 3500 MHz
CPU Maximum Turbo Frequency........: 3900 MHz
CPU P-States [ 33 (37) 39 ]
CPU C3-Cores [ 0 1 4 7 ]
CPU C6-Cores [ 0 3 4 5 6 7 ]
CPU C7-Cores [ 0 1 2 3 4 5 6 ]
CPU P-States [ 33 36 37 (38) 39 ]
CPU C3-Cores [ 0 1 3 4 5 6 7 ]
CPU C6-Cores [ 0 1 2 3 4 5 6 7 ]
CPU C7-Cores [ 0 1 2 3 4 5 6 7 ]
CPU P-States [ 29 33 36 (37) 38 39 ]
CPU P-States [ (16) 22 29 33 36 37 38 39 ]
CPU C3-Cores [ 0 1 2 3 4 5 6 7 ]
CPU P-States [ 16 22 29 30 33 36 37 (38) 39 ]
CPU P-States [ (16) 22 24 29 30 33 36 37 38 39 ]
CPU P-States [ (16) 21 22 24 29 30 33 36 37 38 39 ]
CPU P-States [ (16) 21 22 24 27 29 30 33 36 37 38 39 ]
CPU P-States [ 16 21 22 23 24 27 29 30 33 36 37 38 (39) ]
CPU P-States [ (16) 21 22 23 24 27 29 30 31 33 36 37 38 39 ]
CPU P-States [ (16) 21 22 23 24 27 29 30 31 33 34 36 37 38 39 ]
CPU P-States [ (16) 21 22 23 24 25 27 29 30 31 33 34 36 37 38 39 ]
CPU P-States [ (16) 21 22 23 24 25 26 27 29 30 31 33 34 36 37 38 39 ]
CPU P-States [ 16 21 22 23 24 25 26 27 29 30 31 33 34 (35) 36 37 38 39 ]
 
With i7 3770k :

Settings:
------------------------------------
logMSRs............................: 1
logIGPU............................: 0
logIntelRegs.......................: 1
logCStates.........................: 1
logIPGStyle........................: 1
InitialTSC.........................: 0x127d909ad18
MWAIT C-States.....................: 4384

Model Specific Regiters
------------------------------------
MSR_CORE_THREAD_COUNT......(0x35) : 0x40008
MSR_PLATFORM_INFO..........(0xCE) : 0x81010F0012300
MSR_PMG_CST_CONFIG_CONTROL.(0xE2) : 0x1E000007
MSR_PMG_IO_CAPTURE_BASE....(0xE4) : 0x10414
IA32_MPERF.................(0xE7) : 0x3CE796C5F2
IA32_APERF.................(0xE8) : 0x3F5E5FD6D7
MSR_FLEX_RATIO.............(0x194) : 0xE0000
MSR_IA32_PERF_STATUS.......(0x198) : 0x23B500002700
MSR_IA32_PERF_CONTROL......(0x199) : 0x2700
IA32_CLOCK_MODULATION......(0x19A) : 0x0
IA32_THERM_STATUS..........(0x19C) : 0x88480000
IA32_MISC_ENABLES..........(0x1A0) : 0x850089
MSR_MISC_PWR_MGMT..........(0x1AA) : 0x400001
MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x25262727
IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x1
MSR_POWER_CTL..............(0x1FC) : 0x4005F
MSR_RAPL_POWER_UNIT........(0x606) : 0xA1003
MSR_PKG_POWER_LIMIT........(0x610) : 0xA58000009F40
MSR_PKG_ENERGY_STATUS......(0x611) : 0x1BB59E07
MSR_PKG_POWER_INFO.........(0x614) : 0x1E00268
MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x1814149400000960
MSR_PP0_POWER_LIMIT........(0x638) : 0xA580
MSR_PP0_ENERGY_STATUS......(0x639) : 0x12EFF222
MSR_PP0_POLICY.............(0x63a) : 0x0
MSR_CONFIG_TDP_NOMINAL.....(0x648) : 0x23
MSR_CONFIG_TDP_LEVEL1......(0x649) : 0x1E0000000000000
MSR_CONFIG_TDP_LEVEL2......(0x64a) : 0x1E0000000000000
MSR_CONFIG_TDP_CONTROL.....(0x64b) : 0x80000000
MSR_TURBO_ACTIVATION_RATIO.(0x64c) : 0x0
MSR_PKGC3_IRTL.............(0x60a) : 0x883B
MSR_PKGC6_IRTL.............(0x60b) : 0x8850
MSR_PKGC7_IRTL.............(0x60c) : 0x8857
MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x2C8B0D6FBC
MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x208995B849
MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x1A142DF144
MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0
IA32_TSC_DEADLINE..........(0x6E0) : 0x1286149ECBC

CPU Ratio Info:
------------------------------------
CPU Low Frequency Mode.............: 1600 MHz
CPU Maximum non-Turbo Frequency....: 3500 MHz
CPU Maximum Turbo Frequency........: 3900 MHz
CPU P-States [ 33 (37) 39 ]
CPU C3-Cores [ 0 1 4 7 ]
CPU C6-Cores [ 0 3 4 5 6 7 ]
CPU C7-Cores [ 0 1 2 3 4 5 6 ]
CPU P-States [ 33 36 37 (38) 39 ]
CPU C3-Cores [ 0 1 3 4 5 6 7 ]
CPU C6-Cores [ 0 1 2 3 4 5 6 7 ]
CPU C7-Cores [ 0 1 2 3 4 5 6 7 ]
CPU P-States [ 29 33 36 (37) 38 39 ]
CPU P-States [ (16) 22 29 33 36 37 38 39 ]
CPU C3-Cores [ 0 1 2 3 4 5 6 7 ]
CPU P-States [ 16 22 29 30 33 36 37 (38) 39 ]
CPU P-States [ (16) 22 24 29 30 33 36 37 38 39 ]
CPU P-States [ (16) 21 22 24 29 30 33 36 37 38 39 ]
CPU P-States [ (16) 21 22 24 27 29 30 33 36 37 38 39 ]
CPU P-States [ 16 21 22 23 24 27 29 30 33 36 37 38 (39) ]
CPU P-States [ (16) 21 22 23 24 27 29 30 31 33 36 37 38 39 ]
CPU P-States [ (16) 21 22 23 24 27 29 30 31 33 34 36 37 38 39 ]
CPU P-States [ (16) 21 22 23 24 25 27 29 30 31 33 34 36 37 38 39 ]
CPU P-States [ (16) 21 22 23 24 25 26 27 29 30 31 33 34 36 37 38 39 ]
CPU P-States [ 16 21 22 23 24 25 26 27 29 30 31 33 34 (35) 36 37 38 39 ]

Can you tell me what settings you have in config.plist/Clover Configurator ?
 
My config.plist
 

Attachments

  • Capture d’écran 2015-11-06 à 13.40.22.jpg
    Capture d’écran 2015-11-06 à 13.40.22.jpg
    175.4 KB · Views: 4,036
The benefits are that the are more states, so if your desktop is idle it will be at 16 (1.6GHz) or when your rendering a video it will be at 37(3.7GHz) if you did not generate an SSDT it would be stuck at one state.

Can this mechanism be used to provide a sort of "software overclock"?
I've got a i5 3570k @ 4.7 ghz, I've never used any SSDT and I still get 4.7, 1.6, 4.4, and others i can't remember off the top of my head. But how is that possible if there was no SSDT listing for 47 (because I've never modified it)?
 
From RehabMan's guide:

Note: If you have a CPU currently unsupported by the script, you may have to provide the data for it.

For example, i7-4720HQ:
Code:
./ssdtPRGen.sh -p 'i7-4710HQ' -f 2600 -turbo 3600

By providing the name 'i7-4710HQ' (similar enough to i7-4720HQ), and overrides for the non-turbo and turbo frequencies, the script is successful. Eventually, it would not be necessary, provided the script is updated with the new CPUs.

Now getting this:

Code:
Stus-MacBook:ssdtPRGen.sh-master stu$ sh ssdtPRGen.sh -p 'M-5Y10c' -f 800 -turbo 2000


ssdtPRGen.sh v0.9 Copyright (c) 2011-2012 by † RevoGirl
             v6.6 Copyright (c) 2013 by † Jeroen
             v15.6 Copyright (c) 2013-2015 by Pike R. Alpha
-----------------------------------------------------------
Bugs > https://github.com/Piker-Alpha/ssdtPRGen.sh/issues <


gDataPath: /Users/stu/Library/ssdtPRGen/Data
Override value: (-f) clock frequency, now using: 800 MHz!
Override value: (-turbo) maximum (turbo) frequency, now using: 2000 MHz!


System information: Mac OS X 10.10.5 (14F27)
Brandstring 'Intel(R) Core(TM) M-5Y10c CPU @ 0.80GHz'
sed: 1: "s/^[\n]*
Error://
": unterminated substitute pattern


Error:
       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.
 
Back
Top