toleda
Moderator
- Joined
- May 19, 2010
- Messages
- 22,834
- Motherboard
- Asus Maximus VII Impact
- CPU
- i7-4770K
- Graphics
- RX 560 + HD4600
- Mac
- Classic Mac
- Mobile Phone
Mavericks: Native CPU/IGPU Power Management
Note: This thread applies to Ivy Bridge, Sandy Bridge and previous. For Haswell and newer, see macOS Native CPU/IGPU Power Management
Native Mavericks power management delivers the best combination of processor and graphics performance and efficiency. The ingredients are an installed processor specific power management ssdt, a compatible system definition and the native power management kext. Native Mavericks power management does not require specific BIOS settings or anything more than one boot setting to load the power management ssdt. Credit for the technique described to PikeRAlpha.
What changed between Mountain Lion and Mavericks power management? The existing processor frequency/power state reporting tools (i.e., MSRDumper, HWMonitor) stopped reporting power states between idle and max non turbo. This led to an incorrect conclusion that native Mavericks power management was not working. A new tool, Intel Power Gadget, shows Mavericks power management is working as designed.
To be clear, native Mavericks power management is not mandatory. The consequences are not severe. Performance is similar, however, higher temps (~10 C), more power (5-10 W) and sleep problems are likely.
Change Log
Installation
Deprecated: AppleIntelCPUPowerManagementInfo
Notes
Problem Reporting
Difference from Haswell/Ivy Bridge/Sandy Bridge Procedure
Tools (Core i3/5/7 xxx /Core 2 and earlier)
Note: This thread applies to Ivy Bridge, Sandy Bridge and previous. For Haswell and newer, see macOS Native CPU/IGPU Power Management
Native Mavericks power management delivers the best combination of processor and graphics performance and efficiency. The ingredients are an installed processor specific power management ssdt, a compatible system definition and the native power management kext. Native Mavericks power management does not require specific BIOS settings or anything more than one boot setting to load the power management ssdt. Credit for the technique described to PikeRAlpha.
What changed between Mountain Lion and Mavericks power management? The existing processor frequency/power state reporting tools (i.e., MSRDumper, HWMonitor) stopped reporting power states between idle and max non turbo. This led to an incorrect conclusion that native Mavericks power management was not working. A new tool, Intel Power Gadget, shows Mavericks power management is working as designed.
To be clear, native Mavericks power management is not mandatory. The consequences are not severe. Performance is similar, however, higher temps (~10 C), more power (5-10 W) and sleep problems are likely.
Change Log
v1.2 - 12/22/14 - 9series LPC, dsdt/ssdt, see Post #530
v1.1 - 4/4/14 - CPU PM/Core i3/5/7 xxx (1st Generation)/Core 2 and earlier (below)
v1.0 - 4/2/14: Initial Release
Requirementsv1.1 - 4/4/14 - CPU PM/Core i3/5/7 xxx (1st Generation)/Core 2 and earlier (below)
v1.0 - 4/2/14: Initial Release
- OS X/10.9.2 or newer
- Desktop/Laptop only
- Server, see Guide: Asus X79 OS X Controlled SpeedStep
- BIOS
- Load Optimized Defaults
- Stock Clock
- Verify
- OC, use ./ssdtPRGen.sh -f freq flag (after stock clock PM working)
- Haswell/HD4600+ (Core i3/5/7 4xxx, 4th Generation)
- Ivy Bridge/HD4000 (Core i3/5/7 3xxx, 3rd Generation)
- Sandy Bridge/HD3000 (Core i3/5/7 2xxx, 2nd Generation)
- System Definition - match processor generation/desktop or laptop
- ssdt - custom to installed processor
- kext - native IOPlatformPlugin.kext
- NullCPUPowerManagement.kext
- Safe Mode boot (-x)
- Discrete graphics
Haswell i3/5/7 4xxx HD4600+____ | Ivy Bridge i3/5/7 3xxx HD4000_____ | Sandy Bridge i3/5/7 2xxx HD3000_____ | |
1. All Systems | |||
BIOS | Load Optimized Defaults | Load Optimized Defaults | Load Optimized Defaults |
Required PlatformPlugin | x86 PlatformPlugin | x86 PlatformPlugin | ACPI_SMC_ PlatformPlugin |
Additional Native Power Management Properties (IOReg) | LPC@1F | LPC@1F | LPC@1F SBUS@1F,3/ BUS0@0 |
_____________________ | ____________ | ____________ | ____________ |
2. Chameleon/Chimera | |||
org.chameleon.Boot.plist | DropSSDT=Yes | DropSSDT=Yes | DropSSDT=Yes |
smbios.plist | imac14 macbookpro11 macbookair6 | imac13 macmini6 macbookpro9 macbookpro10 macbookair5 | imac12 macmini5 macbookpro8 |
_____________________ | ____________ | ____________ | ____________ |
3. Clover/config.plist/ | |||
ACPI/ | DropTables/ SSDT/CpuPm SSDT/Cpu0Ist | DropTables/ SSDT/CpuPm SSDT/Cpu0Ist | |
ACPI/SMBIOS | Default | Default | Default |
Installation
- Backup system (bootable backup; SuperDuper, CarbonCopyCloner, etc.)
- Rescue Tool (UniBeast, etc.)
- Tools (see Tools, below)
- IOReg: Download and install
- Intel Power Gadget: Download and install
- AppleIntelCPUPowerManagementInfo.kext: Download and install
- Restart
- If KP, remove S/L/E/AppleIntelCPUPowerManagementInfo.kext
- Proceed without the kext
- Baseline
- IOReg
- File/Save a Copy As...
- AICPUPMI
- Terminal
- cat /var/log/system.log | grep "AICPUPMI:"
- File/Export Text As...
- Terminal
- Intel Power Gadget (Note 2)
- Make screenshot
- IOReg
- Bootloader Settings
- All Systems
- Deselect any/all power management entries/selections
- Generate C States
- Generate P States
- Generate CPU States
- Plugin Type
- Etc,
- Deselect any/all power management entries/selections
- Chameleon/Chimera
- Clover
- All Systems
- Prepare ssdt
- The script uses the installed processor
- For a different CPU, see ssdtPRGen.sh v11.0 | Pike's Universum
- For Desktop/Ivy Bridge/Core i3/5/7 3xxx, 3rd Generation (Note 3)
- Piker-Alpha/ssdtPRGen.sh/Download ZIP
- Use BETA branch
- Terminal:
- cd Downloads/ssdtPRGen.sh-master
- sudo chmod 755 ssdtPRGen.sh
- ./ssdtPRGen.sh
- n
- n
- Example:
Code:
Last login: Fri Mar 7 23:50:39 on console . . .$ cd /Users/. . ./Downloads/ssdtPRGen.sh-master . . .:ssdtPRGen.sh-master . . .$ ./ssdtPRGen.sh This script must be run as root! Password: ssdtPRGen.sh v0.9 Copyright (c) 2011-2012 by † RevoGirl v6.6 Copyright (c) 2013 by † Jeroen v12.7 Copyright (c) 2013-2014 by Pike R. Alpha ----------------------------------------------------------- Bugs > https://github.com/Piker-Alpha/ssdtPRGen.sh/issues < System information: Mac OS X 10.9.2 (13C64) Brandstring 'Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz' Scope (_PR_) {26 bytes} with ACPI Processor declarations found in the DSDT (ACPI 1.0 compliant) Generating ssdt.dsl for a 'iMac14,2' with board-id [Mac-27ADBB7B4CEE8E61] Haswell Core i7-4770K processor [0x306C3] setup [0x0705] With a maximum TDP of 84 Watt, as specified by Intel Number logical CPU's: 8 (Core Frequency: 3500 MHz) Number of Turbo States: 4 (3600-3900 MHz) Number of P-States: 32 (800-3900 MHz) Injected C-States for CPU0 (C1,C3,C6,C7) Injected C-States for CPU1 (C1,C2,C3) Intel ACPI Component Architecture ASL Optimizing Compiler version 20130117-64 [Jan 19 2013] Copyright (c) 2000 - 2013 Intel Corporation ASL Input: /Users/. . ./Desktop/ssdt.dsl - 327 lines, 9975 bytes, 71 keywords AML Output: /Users/. . ./Desktop/ssdt.aml - 2178 bytes, 28 named objects, 43 executable opcodes Compilation complete. 0 Errors, 0 Warnings, 0 Remarks, 0 Optimizations Do you want to copy /Users/. . ./Desktop/ssdt.aml to /Extra/ssdt.aml? (y/n)? n Do you want to open ssdt.dsl (y/n)? n
- The script uses the installed processor
- Rename Desktop/ssdt.aml to Desktop/SSDT.aml
- Install
- Chimera/Chameleon
- Extra/SSDT.aml
- Clover
- EFI/Clover/ACPI/Patched/SSDT.aml
- Chimera/Chameleon
- Restart
- Verify
- Console/Search: XCPM
-
Code:
kernel[0] XCPM: registered kernel[0] IOPPF: XCPM mode
-
- IOReg
- X86PlatformPlugin
- AICPUPMI
- Terminal:
- cat /var/log/system.log | grep "AICPUPMI:"
- Terminal:
- Intel Power Gadget (Note 1)
- Screenshot
- Verify Console/IOReg/AICPUPMI/Power Gadget (see below)
- Console/Search: XCPM
- Haswell/Ivy Bridge
- Sandy Bridge
Deprecated: AppleIntelCPUPowerManagementInfo
- Core I7-4770K
- Necessary for native Mavericks PM/not sufficient to determine if PM is working
- Summary:
Code:
CPU P-States [ 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 (35) 36 37 38 39 ] iGPU P-States [ 4 5 6 7 8 9 10 12 13 16 (17) 18 20 22 23 24 25 ] Note: Results will vary, minimum P-States: CPU: 5 P-States or less (i.e., only min and/or turbo), PM not working IGPU: 3 P-States or less i.e., only min or max), PM not working
- Details:
Code:
Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: v3.3 Copyright © 2012-2014 Pike R. Alpha. All rights reservedMar 27 14:26:14 localhost kernel[0]: AICPUPMI: logMSRs............................: 1Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: logIGPU............................: 1 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: logCStates.........................: 1 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: logIPGStyle........................: 1 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MWAIT C-States.....................: 270624 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_CORE_THREAD_COUNT......(0x35) : 0x40008 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PLATFORM_INFO..........(0xCE) : 0x80838F3012300 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PMG_CST_CONFIG_CONTROL.(0xE2) : 0x1E000005 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PMG_IO_CAPTURE_BASE....(0xE4) : 0x21814 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: IA32_MPERF.................(0xE7) : 0xE401363B8 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: IA32_APERF.................(0xE8) : 0xDFDA821ED Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_FLEX_RATIO.............(0x194) : 0xE0000 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_IA32_PERF_STATUS.......(0x198) : 0x236500002500 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_IA32_PERF_CONTROL......(0x199) : 0x2700 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: IA32_CLOCK_MODULATION......(0x19A) : 0x0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: IA32_THERM_STATUS..........(0x19C) : 0x883E0000 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: IA32_MISC_ENABLES..........(0x1A0) : 0x850089 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_MISC_PWR_MGMT..........(0x1AA) : 0x400001 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_TURBO_RATIO_LIMIT......(0x1AD) : 0x25262727 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: IA32_ENERGY_PERF_BIAS......(0x1B0) : 0x5 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_POWER_CTL..............(0x1FC) : 0x4005F Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_RAPL_POWER_UNIT........(0x606) : 0xA0E03 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PKG_POWER_LIMIT........(0x610) : 0x428348001A82A0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PKG_ENERGY_STATUS......(0x611) : 0x25B3D6 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PKGC3_IRTL.............(0x60a) : 0x8842 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PKGC6_IRTL.............(0x60b) : 0x8873 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PKGC7_IRTL.............(0x60c) : 0x8891 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PP0_CURRENT_CONFIG.....(0x601) : 0x101414000002F8 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PP0_POWER_LIMIT........(0x638) : 0x0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PP0_ENERGY_STATUS......(0x639) : 0x147A02 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PP0_POLICY.............(0x63a) : 0x0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PP1_POWER_LIMIT........(0x640) : 0x0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PP1_ENERGY_STATUS......(0x641) : 0x6D03 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PP1_POLICY.............(0x642) : 0x18 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_CONFIG_TDP_NOMINAL.....(0x648) : 0x23 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_CONFIG_TDP_LEVEL1......(0x649) : 0x0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_CONFIG_TDP_LEVEL2......(0x64a) : 0x0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_CONFIG_TDP_CONTROL.....(0x64b) : 0x80000000 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_TURBO_ACTIVATION_RATIO.(0x64c) : 0x0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PKG_C2_RESIDENCY.......(0x60d) : 0x0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PKG_C3_RESIDENCY.......(0x3f8) : 0x0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PKG_C6_RESIDENCY.......(0x3f9) : 0x0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: MSR_PKG_C7_RESIDENCY.......(0x3fa) : 0x0 Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: CPU Low Frequency Mode.............: 800 MHz Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: CPU Maximum non-Turbo Frequency....: 3500 MHz Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: CPU Maximum Turbo Frequency........: 3900 MHz Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: IGPU Current Frequency.............: 1250 MHz Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: IGPU Minimum Frequency.............: 200 MHz Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: IGPU Maximum Non-Turbo Frequency...: 350 MHz Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: IGPU Maximum Turbo Frequency.......: 1250 MHz Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: IGPU Maximum limit.................: No Limit Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: CPU P-States [ (8) 34 37 ] iGPU P-States [ (25) ] Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 5 ] Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: CPU C7-Cores [ 0 2 4 5 7 ] Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: CPU P-States [ (8) 33 34 37 ] iGPU P-States [ (25) ] Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 4 5 6 7 ] Mar 27 14:26:14 localhost kernel[0]: AICPUPMI: CPU C7-Cores [ 0 1 2 4 5 7 ] Mar 27 14:26:15 kernel[0]: AICPUPMI: CPU P-States [ 8 33 34 36 (37) ] iGPU P-States [ (4) 25 ] Mar 27 14:26:15 kernel[0]: AICPUPMI: CPU C3-Cores [ 0 1 2 3 4 5 6 7 ] Mar 27 14:26:15 kernel[0]: AICPUPMI: CPU C7-Cores [ 0 1 2 3 4 5 6 7 ] Mar 27 14:26:16 kernel[0]: AICPUPMI: CPU P-States [ 8 33 34 (35) 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:16 kernel[0]: AICPUPMI: CPU P-States [ (8) 30 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:17 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 ] Mar 27 14:26:17 kernel[0]: AICPUPMI: CPU P-States [ 8 27 30 33 34 (35) 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:18 kernel[0]: AICPUPMI: CPU P-States [ (8) 12 27 30 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:20 kernel[0]: AICPUPMI: CPU P-States [ (8) 12 27 28 30 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:37 kernel[0]: AICPUPMI: CPU P-States [ (8) 12 27 28 30 31 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:37 kernel[0]: AICPUPMI: CPU P-States [ (8) 12 23 27 28 30 31 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:37 kernel[0]: AICPUPMI: CPU P-States [ (8) 12 23 27 28 29 30 31 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:37 kernel[0]: AICPUPMI: CPU P-States [ (8) 12 13 23 27 28 29 30 31 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:37 kernel[0]: AICPUPMI: CPU P-States [ (8) 12 13 23 25 27 28 29 30 31 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:37 kernel[0]: AICPUPMI: CPU P-States [ (8) 12 13 22 23 25 27 28 29 30 31 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:37 kernel[0]: AICPUPMI: CPU P-States [ (8) 11 12 13 22 23 25 27 28 29 30 31 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:37 kernel[0]: AICPUPMI: CPU P-States [ (8) 11 12 13 22 23 25 27 28 29 30 31 32 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:37 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 11 12 13 22 23 25 27 28 29 30 31 32 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:37 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 11 12 13 22 23 24 25 27 28 29 30 31 32 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:46 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 ] Mar 27 14:26:47 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 11 12 13 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 ] iGPU P-States [ (4) 25 ] Mar 27 14:26:49 kernel[0]: AICPUPMI: CPU P-States [ 8 9 11 12 13 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 (38) ] iGPU P-States [ (4) 25 ] Mar 27 14:26:50 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 11 12 13 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ 4 (6) 25 ] Mar 27 14:26:50 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 7 ] Mar 27 14:26:50 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 6 7 ] Mar 27 14:26:54 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 4 6 7 ] Mar 27 14:26:54 kernel[0]: AICPUPMI: CPU C6-Cores [ 0 1 2 3 4 5 6 7 ] Mar 27 14:26:55 kernel[0]: AICPUPMI: CPU P-States [ 8 9 11 12 13 22 23 24 25 26 27 28 29 30 31 32 33 34 (35) 36 37 38 ] iGPU P-States [ 4 6 (8) 25 ] Mar 27 14:26:57 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 11 12 13 17 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ (4) 6 8 25 ] Mar 27 14:27:02 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 11 12 13 17 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ (4) 6 8 25 ] Mar 27 14:27:05 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 11 12 13 16 17 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ (4) 6 8 25 ] Mar 27 14:27:06 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 11 12 13 16 17 19 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ (4) 6 8 25 ] Mar 27 14:27:06 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 11 12 13 16 17 18 19 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ (4) 6 8 25 ] Mar 27 14:27:12 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 16 17 18 19 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ (4) 6 8 25 ] Mar 27 14:27:12 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 14 16 17 18 19 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ (4) 6 8 25 ] Mar 27 14:27:17 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 14 15 16 17 18 19 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ (4) 6 8 25 ] Mar 27 14:27:45 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 14 15 16 17 18 19 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ 4 6 8 (10) 25 ] Mar 27 14:27:45 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 14 15 16 17 18 19 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ 4 6 8 (9) 10 25 ] Mar 27 14:27:45 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ] iGPU P-States [ 4 6 8 (9) 10 25 ] Mar 27 14:28:02 kernel[0]: AICPUPMI: CPU P-States [ 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 (39) ] iGPU P-States [ (4) 6 8 9 10 25 ] Mar 27 14:28:46 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ] iGPU P-States [ 4 6 (7) 8 9 10 25 ] Mar 27 14:28:47 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ] iGPU P-States [ 4 (5) 6 7 8 9 10 25 ] Mar 27 14:33:04 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ] iGPU P-States [ 4 5 6 7 8 9 10 (12) 25 ] Mar 27 14:33:05 kernel[0]: AICPUPMI: CPU P-States [ 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 (39) ] iGPU P-States [ 4 5 6 7 8 9 10 12 (24) 25 ] Mar 27 14:33:05 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ] iGPU P-States [ 4 5 6 7 8 9 10 12 (18) 24 25 ] Mar 27 14:33:06 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ] iGPU P-States [ 4 5 6 7 8 9 10 12 (16) 18 24 25 ] Mar 27 14:33:06 kernel[0]: AICPUPMI: CPU P-States [ 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 (35) 36 37 38 39 ] iGPU P-States [ 4 5 6 7 8 9 10 12 16 18 (22) 24 25 ] Mar 27 14:33:10 kernel[0]: AICPUPMI: CPU P-States [ 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 (35) 36 37 38 39 ] iGPU P-States [ 4 5 6 7 8 9 10 12 (13) 16 18 22 24 25 ] Mar 27 14:33:17 kernel[0]: AICPUPMI: CPU P-States [ 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 (39) ] iGPU P-States [ 4 5 6 7 8 9 10 12 13 16 18 22 (23) 24 25 ] Mar 27 14:33:56 kernel[0]: AICPUPMI: CPU P-States [ (8) 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 ] iGPU P-States [ 4 5 6 7 8 9 10 12 13 16 18 (20) 22 23 24 25 ] Mar 27 14:33:57 kernel[0]: AICPUPMI: CPU P-States [ 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 (35) 36 37 38 39 ] iGPU P-States [ 4 5 6 7 8 9 10 12 13 16 (17) 18 20 22 23 24 25 ]
- Core i7-4770K/idle
- View attachment SSDT-i7-4770k-no_oc.aml.zip
- Temperature/Power - OK
- Frequencies - Power Gadget - OK (HWMonitor - not OK)
- Core i7-3770K/Cinebench R15/OpenGL
- Core i7-3770K/Cinebench R15/CPU
- Applications/Utilities/Console
- AppleIntelInfo.kext
- AppleIntelInfo.kext.zip
- Deprecated- AppleIntelCPUPowerManagementInfo.kext PMinfo at clang · Piker-Alpha
- Chameleon Wizard Chameleon Wizard
- Clover Configurator Clover Third-Party Tools - Clover - InsanelyMac Forum
- Intel Power Gadget
- RegistryExplorer - Choose 1 or 2
- ssdtPRGen.sh Piker-Alpha/ssdtPRGen.sh
Notes
- System Definition/macpro6,1, socket LGA 2011 only
- Clover/Intel Power Gaget
- Frequency scale is wrong with Clover
- Fix, set config.plist/CPU/QPI/100
- Desktop/Ivy Bridge/Core i-3xxx (i.e., i7-3770K)
- Use ./ssdtPRGen.sh -w 3
PikeRAlpha Xnu CPU Power Management | Pike's Universum
and AppleIntelCPUPowerManagementInfo.kext | Pike's Universum
and AppleIntelCPUPowerManagementInfo.kext | Pike's Universum
Problem Reporting
- Description of problem
- OS X version/motherboard model/BIOS version/processor/graphics
- Procedure/Guide Used
- Copy of IORegistryExplorer/IOJones (either)
- IOReg/File/Save a Copy As…, verify file (no ioreg.txt, screenshots)
- IOJones/File/Save...
- Copy of AICPUPMI/Terminal:/cat /var/log/system.log | grep "AICPUPMI:"
- Terminal/File/Export Text As...
- Copy Of Console/All Messages (last boot)
- Console/File/Save a Copy As...
- Screenshot of Intel Power Gadget
- Chimera/Chameleon
- Extra/org.chameleon.Boot.plist
- DPCIManager/Misc/Boot Log
- Extra/dsdt.aml (if installed)
- Extra/ssdt.aml
- Clover
- EFI/CLOVER/config.plist
- EFI/CLOVER/misc/debug.log (Set config.plist/Boot/Debug/YES)
- or DPCIManager/Misc/Boot Log
- EFI/CLOVER/ACPI/Patched/dsdt.aml (if installed)
- EFI/CLOVER/ACPI/Patched/ssdt.aml
- ssdtPPRGen.sh questions, post to Issues · Piker-Alpha/ssdtPRGen.sh
Difference from Haswell/Ivy Bridge/Sandy Bridge Procedure
- Uses native ssdt (custom processor specific ssdt not required)
- Core i3/5/7 xxx (1st Generation/Nahalem, no HDGraphics support))
- Desktop (Clarkdale/Lynnfield)
- Laptop (Arrandale)
- Server (Bloomfield/Gainstown/Gulftown/Westmere-EP)
- Core 2 and prior
- System Definition - match processor generation/desktop or laptop
- ssdt - native
- kext - native IOPlatformPlugin.kext
- NullCPUPowerManagement.kext
- Safe Mode boot (-x)
- Discrete graphics
Core i3/5/7 xxx No HDGraphics Support | Core 2. . . and previous_________ | |
1. All Systems | ||
BIOS | Load Optimized Defaults | Load Optimized Defaults |
Required PlatformPlugin | ACPI_SMC_ PlatformPlugin | ACPI_SMC_ PlatformPlugin |
Additional Native Power Management Properties (IOReg) | LPC@1F SBUS@1F,3/ BUS0@0 | LPC@1F SBUS@1F,3/ BUS0@0 |
____________________ | ____________________ | ____________________ |
2. Chameleon/Chimera | ||
org.chameleon.Boot.plist | Generate: CPUStates=Yes or C State=Yes and P State=Yes | Generate: CPUStates=Yes or C State=Yes and P State=Yes |
smbios.plist | mac11 macbookpro6 macpro5 (Xeon only) | macpro3 |
____________________ | ____________________ | ____________________ |
3. Clover/config.plist/ | ||
ACPI/SSDT | Generate/ CStates=YES PStates=YES | Generate/ CStates=YES PStates=YES |
ACPI/SMBIOS | Default | Default |
Tools (Core i3/5/7 xxx /Core 2 and earlier)
- AppleIntelCPUPowerManagementInfo.kext - Not supported
- Chameleon Wizard - Link above
- Clover Configurator - Link above
- Intel Power Gadget - Not supported
- IOReg - Link above
- ssdtPRGen.sh - Not supported
- Backup system (make bootable backup; SuperDuper, CarbonCopyCloner, etc.)
- Rescue Tool (UniBeast, etc.)
- Tools
- IOReg: Download and install
- Restart
- Baseline
- IOReg
- Save a Copy As...
- IOReg
- Bootloader
- Chameleon/Chimera
- org.chameleon.Boot.plist (1 or 2)
- GenerateCPUStates=Yes
- Generate C States=Yes and Generate P States=Yes
- smbios (1 or 2 or 3)
- macbookpro6
- imac11
- macpro3 (Core 2 and earlier)
- org.chameleon.Boot.plist (1 or 2)
- Clover
- config.plist
- Generate C States=Yes and Generate P States=Yes
- smbios (default)
- No entry required
- config.plist
- Chameleon/Chimera
- Restart
- Verify, see IOReg/2. Sandy Bridge (above)
- IOReg
- Core i3/5/7 xxx/Core 2 and earlier
- AICPMVers
- Core i3/5/7 xxx/Core 2 and earlier
- IOReg
- Problem Reporting (see above)
Attachments
Last edited: