Contribute
Register

[Guide] Native Power Management for Laptops

Hello everyone,

I'm unable to got power management working.
My intel is unable to up to the maximum cadency (2,7 gHz with turbo boost) and the IGPU too, it stay constantly in 300mHz while it should can up to 900mHz.

I tested ssdtPRGen.sh and the Experimental technique XCPM.
I set DropOem=true, my ssdt.aml is stored to the end, and plugin-type is set to 1.
I patched all my ssdt and dsdt to fix GFX0 to IGPU.

I not see what I could have forgotten.
Here is my files reporting.
Thank for your help

You should not use DropOem=true unless you're putting all OEM SSDTs (appropriately patched in ACPI/patched).
For your hardware, you need only SSDT-PluginType1.aml.
You also have SMBIOS truncation, set config.plist/KernelAndKextPatches/DellSMBIOSPatch=true.
 
You should not use DropOem=true unless you're putting all OEM SSDTs (appropriately patched in ACPI/patched).
For your hardware, you need only SSDT-PluginType1.aml.
You also have SMBIOS truncation, set config.plist/KernelAndKextPatches/DellSMBIOSPatch=true.

Thank you rehabman for your reply.
So I disabled DropOem, and I add DELLSMBIOS in KernelAndKextPatches but boot fail again and waits for root device.
I have to patch HECI to IMEI and fix USB, can it come from there ?

Thank you for your help.
 

Attachments

  • files_reporting_ 2.zip
    540.8 KB · Views: 73
"Problem Reporting" files are incomplete.
Read FAQ, "Problem Reporting" again. Carefully. Attach all requested files/output.
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
Thank you rehabman for your reply.
So I disabled DropOem, and I add DELLSMBIOS in KernelAndKextPatches but boot fail again and waits for root device.
I have to patch HECI to IMEI and fix USB, can it come from there ?

Thank you for your help.
Hello everyone,

I'm unable to got power management working.
My intel is unable to up to the maximum cadency (2,7 gHz with turbo boost) and the IGPU too, it stay constantly in 300mHz while it should can up to 900mHz.

I tested ssdtPRGen.sh and the Experimental technique XCPM.
I set DropOem=true, my ssdt.aml is stored to the end, and plugin-type is set to 1.
I patched all my ssdt and dsdt to fix GFX0 to IGPU.

I not see what I could have forgotten.
Here is my files reporting.
Thank for your help


Sorry Rehabman,

So I still have booting issue if I disable DropOem.
My CPU is limited to 2,5 ghz max and stay to 1,3 ghz min instead of 800 mhz min.
My IGPU is limited to 0,3 ghz according to intel gadget.

Here is my files for reporting problem and a picture of my boot fail.

Thank very much for your help.
 

Attachments

  • files_reporting_.zip
    540.1 KB · Views: 63
  • boot_fail.jpg
    boot_fail.jpg
    1.1 MB · Views: 70
Sorry Rehabman,

So I still have booting issue if I disable DropOem.
My CPU is limited to 2,5 ghz max and stay to 1,3 ghz min instead of 800 mhz min.
My IGPU is limited to 0,3 ghz according to intel gadget.

Here is my files for reporting problem and a picture of my boot fail.

Thank very much for your help.

"Problem Reporting" files are incomplete.
Read FAQ, "Problem Reporting" again. Carefully. Attach all requested files/output.
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
 

Attachments

  • files_reporting_.zip
    3.3 MB · Views: 78
  • boot_fail.jpg
    boot_fail.jpg
    1.1 MB · Views: 190
Sorry again.

Here is the files complete.

Timestamps on your files are not trustable (they are all the same, as if you touched each file after copying, or used something strange to create the ZIP).

Use the following procedure to collect EFI/Clover:
- reboot into Clover
- at main Clover screen, press F4 and F2
- then boot macOS
- mount EFI
- with Finder, copy EFI/Clover to the desktop
- remove 'themes' from the copy
- create ZIP by using right-click: Compress "CLOVER"
- attach resulting ZIP

Note: The ioreg shows SMBIOS truncation. You forgot to set config.plist/KernelAndKextPatches/DellSMBIOSPatch=true, or you're using a version of Clover that does not support the feature. This is something you need to check on your own... it is really obvious the problem in ioreg.

Your profile indicates you have no secondary graphics card. Therefore no reason to have patched SSDTs in ACPI/patched. Remove all of them, do renames with config.plist/ACPI/DSDT/Patches and set DropOem=false. That way you only need to patch DSDT.aml.

DSDT.aml is not patched correctly. For example, no evidence of any "OS Check Fix" patch. Refer to the ACPI patching guide (pinned thread in this forum).
 
Timestamps on your files are not trustable (they are all the same, as if you touched each file after copying, or used something strange to create the ZIP).

Use the following procedure to collect EFI/Clover:
- reboot into Clover
- at main Clover screen, press F4 and F2
- then boot macOS
- mount EFI
- with Finder, copy EFI/Clover to the desktop
- remove 'themes' from the copy
- create ZIP by using right-click: Compress "CLOVER"
- attach resulting ZIP

Note: The ioreg shows SMBIOS truncation. You forgot to set config.plist/KernelAndKextPatches/DellSMBIOSPatch=true, or you're using a version of Clover that does not support the feature. This is something you need to check on your own... it is really obvious the problem in ioreg.

Your profile indicates you have no secondary graphics card. Therefore no reason to have patched SSDTs in ACPI/patched. Remove all of them, do renames with config.plist/ACPI/DSDT/Patches and set DropOem=false. That way you only need to patch DSDT.aml.

DSDT.aml is not patched correctly. For example, no evidence of any "OS Check Fix" patch. Refer to the ACPI patching guide (pinned thread in this forum).

Ok thank you Rehabman,

So my clover must be exceeded DellSMBIOS is set to true, I will update it.
That's strange because I have patched my DSDT for brightness fix "GFX0 to IGPU" and that's work.
So I will patch my DSDT to fix "HECI to IMEI", "OS Check fix" and other that are recommended for dell xps 9343 and 9350.

Thank you very much for your help.
 
I've implemented HWP power management on my Asus Zenbook UX501VW, MacBookPro13,3.

I'm on Sierra 10.12.6

I used Piker Alpha's script to reduce the idle speed from 1300 MHz to 800 MHz. I'm using an X86PlatformPluginInjector. Low idle speed at 800 MHz works perfectly. But on the full speed end, the processor doesn't go any higher than x33 3300 Mhz instead of the maximum turbo of x35 3500 Mhz.

Cinebench only runs at x31 3100 Mhz at the most, while on Windows Cinebench attains the peak 3500 Mhz speed several times.

I don't know if there's a power saving feature preventing the full 3500 Mhz. Or maybe I've implemented HWP incorrectly?

Code:
AppleIntelInfo.kext v2.9 Copyright © 2012-2017 Pike R. Alpha. All rights reserved.

Settings:
------------------------------------------
logMSRs..................................: 1
logIGPU..................................: 1
logCStates...............................: 1
logIPGStyle..............................: 1
InitialTSC...............................: 0xa8896fd8a2 (27 MHz)
MWAIT C-States...........................: 286531872

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

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

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

MSR_IA32_PLATFORM_ID.............(0x17)  : 0x14000000000000
------------------------------------------
- Processor Flags...................... : 5

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

MSR_PLATFORM_INFO................(0xCE)  : 0x8083BF1011A00
------------------------------------------
- Maximum Non-Turbo Ratio.............. : 0x1A (2600 MHz)
- Ratio Limit for Turbo Mode........... : 1 (programmable)
- TDP Limit for Turbo Mode............. : 1 (programmable)
- Low Power Mode Support............... : 1 (LPM supported)
- Number of ConfigTDP Levels........... : 1 (additional TDP level(s) available)
- Maximum Efficiency Ratio............. : 8
- Minimum Operating Ratio.............. : 8

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

MSR_PMG_IO_CAPTURE_BASE..........(0xE4)  : 0x51814
------------------------------------------
- LVL_2 Base Address................... : 0x1814
- C-state Range........................ : 5 (C-States not included, I/O MWAIT redirection not enabled)

IA32_MPERF.......................(0xE7)  : 0x129FA3D051
IA32_APERF.......................(0xE8)  : 0x11FE5239DD

MSR_FLEX_RATIO...................(0x194) : 0x0
------------------------------------------

MSR_IA32_PERF_STATUS.............(0x198) : 0x22C800002000
------------------------------------------
- Current Performance State Value...... : 0x2000 (3200 MHz)

MSR_IA32_PERF_CONTROL............(0x199) : 0xA00
------------------------------------------
- Target performance State Value....... : 0xA00 (1000 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) : 0x88390008
------------------------------------------
- Thermal Status....................... : 0
- Thermal Log.......................... : 0
- PROCHOT # or FORCEPR# event.......... : 0
- PROCHOT # or FORCEPR# log............ : 1
- 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...................... : 57
- 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) : 0x8640000
------------------------------------------
- Turbo Attenuation Units.............. : 0
- Temperature Target................... : 100
- TCC Activation Offset................ : 8

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)
- SpeedShift Technology Enable......... : 1 (enabled)
- SpeedShift Interrupt Coordination.... : 1 (enabled)
- SpeedShift Energy Efficient Perf..... : 1 (enabled)
- SpeedShift Technology Setup for HWP.. : Yes (setup for HWP)

MSR_TURBO_RATIO_LIMIT............(0x1AD) : 0x1F202123
------------------------------------------
- Maximum Ratio Limit for C01.......... : 23 (3500 MHz)
- Maximum Ratio Limit for C02.......... : 21 (3300 MHz)
- Maximum Ratio Limit for C03.......... : 20 (3200 MHz)
- Maximum Ratio Limit for C04.......... : 1F (3100 MHz)

IA32_ENERGY_PERF_BIAS............(0x1B0) : 0x5
------------------------------------------
- Power Policy Preference...............: 5 (balanced performance and energy saving)

MSR_POWER_CTL....................(0x1FC) : 0x24005F
------------------------------------------
- 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) : 0x4281C200DD8168
------------------------------------------
- Package Power Limit #1............... : 45 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....... : 110 (163840 milli-Seconds)
- Package Power Limit #2............... : 56 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) : 0x1A136F6
------------------------------------------
- Total Energy Consumed................ : 1668 Joules (Watt = Joules / seconds)

MSR_PP0_POWER_LIMIT..............(0x638) : 0x0

MSR_PP0_ENERGY_STATUS............(0x639) : 0x106522D
------------------------------------------
- Total Energy Consumed................ : 1049 Joules (Watt = Joules / seconds)

MSR_PP0_POWER_LIMIT..............(0x638) : 0x0

MSR_PP0_ENERGY_STATUS............(0x639) : 0x1065253
------------------------------------------
- Total Energy Consumed................ : 1049 Joules (Watt = Joules / seconds)

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

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

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

MSR_CONFIG_TDP_NOMINAL...........(0x648) : 0x1A
MSR_CONFIG_TDP_LEVEL1............(0x649) : 0x150118
MSR_CONFIG_TDP_LEVEL2............(0x64a) : 0x0
MSR_CONFIG_TDP_CONTROL...........(0x64b) : 0x0
MSR_TURBO_ACTIVATION_RATIO.......(0x64c) : 0x0
MSR_PKGC3_IRTL...................(0x60a) : 0x884E
MSR_PKGC6_IRTL...................(0x60b) : 0x8876
MSR_PKGC7_IRTL...................(0x60c) : 0x8894
MSR_PKG_C2_RESIDENCY.............(0x60d) : 0x5A743A0BA6
MSR_PKG_C3_RESIDENCY.............(0x3f8) : 0x0
MSR_PKG_C2_RESIDENCY.............(0x60d) : 0x5A743A0BA6
MSR_PKG_C3_RESIDENCY.............(0x3f8) : 0x0
MSR_PKG_C6_RESIDENCY.............(0x3f9) : 0x0
MSR_PKG_C7_RESIDENCY.............(0x3fa) : 0x0
MSR_PKG_C8_RESIDENCY.............(0x630) : 0x0
MSR_PKG_C9_RESIDENCY.............(0x631) : 0x0
MSR_PKG_C10_RESIDENCY............(0x632) : 0x0
MSR_PKG_C8_LATENCY...............(0x633) : 0x0
MSR_PKG_C9_LATENCY...............(0x634) : 0x0
MSR_PKG_C10_LATENCY..............(0x635) : 0x0

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

MSR_PPERF........................(0x64E) : 0x10631C4F08
------------------------------------------
- Hardware workload scalability........ : 70382276360

MSR_CORE_PERF_LIMIT_REASONS......(0x64F) : 0x30011000
------------------------------------------
- PROCHOT Status....................... : 0
- Thermal Status....................... : 0
- Residency State Regulation Status.... : 0
- Running Average Thermal Limit Status. : 0
- VR Therm Alert Status................ : 0
- VR Therm Design Current Status....... : 0
- Other Status......................... : 0
- Package/Platform-Level #1 Power Limit : 0
- Package/Platform-Level #2 Power Limit : 0
- Max Turbo Limit Status............... : 1 (frequency reduced below OS request due to multi-core turbo limits)
- Turbo Transition Attenuation Status.. : 0
- PROCHOT Log.......................... : 1 (status bit has asserted)
- Thermal Log.......................... : 0
- Residency State Regulation Log....... : 0
- Running Average Thermal Limit Log.... : 0
- VR Therm Alert Log................... : 0
- VR Thermal Design Current Log........ : 0
- Other Status Log..................... : 0
- Package/Platform-Level #1 Power Limit : 0
- Package/Platform-Level #2 Power Limit : 0
- Max Turbo Limit Log.................. : 1 (status bit has asserted)
- Turbo Transition Attenuation Log..... : 1 (status bit has asserted)
HDC Supported

IA32_PKG_HDC_CTL.................(0xDB0) : 0x0

IA32_PM_CTL1.....................(0xDB1) : 0x1
------------------------------------------
HDC Allow Block..................(0xDB1) : 1 (HDC blocked)

IA32_THREAD_STALL................(0xDB2) : 0x0

MSR_PKG_HDC_CONFIG...............(0x652) : 0x2
------------------------------------------
Pkg Cx Monitor ..................(0x652) : 2 (count package C3 and deeper)
MSR_CORE_HDC_RESIDENCY...........(0x653) : 0x0

MSR_PKG_HDC_SHALLOW_RESIDENCY....(0x655) : 0x0

MSR_PKG_HDC_DEEP_RESIDENCY.......(0x656) : 0x0

IA32_TSC_DEADLINE................(0x6E0) : 0xA88C95EDCE
MSR_PPERF........................(0x63E) : 0x1 (24)

IA32_PM_ENABLE...................(0x770) : 0x1 (HWP Supported and Enabled)

IA32_HWP_CAPABILITIES............(0x771) : 0x1091A23
-----------------------------------------
- Highest Performance.................. : 35
- Guaranteed Performance............... : 26
- Most Efficient Performance........... : 9
- Lowest Performance................... : 1

IA32_HWP_INTERRUPT...............(0x773) : 0x1
------------------------------------------
- Guaranteed Performance Change........ : 1 (Interrupt generated on change of)
- Excursion Minimum.................... : 0 (Interrupt generation disabled)

IA32_HWP_REQUEST................(0x774) : 0x20232308
-----------------------------------------
- Minimum Performance................. : 8
- Maximum Performance................. : 35
- Desired Performance................. : 35
- Energy Efficient Performance........ : 32
- Activity Window..................... : 0, 0
- Package Control..................... : 0

IA32_HWP_STATUS..................(0x777) : 0x0
-----------------------------------------
- Guaranteed Performance Change....... : 0 (has not occured)
- Excursion To Minimum................ : 0 (has not occured)

CPU Ratio Info:
------------------------------------------
Base Clock Frequency (BLCK)............. : 100 MHz
Maximum Efficiency Ratio/Frequency.......:  8 ( 800 MHz)
Maximum non-Turbo Ratio/Frequency........: 26 (2600 MHz)
Maximum Turbo Ratio/Frequency............: 35 (3500 MHz)

IGPU Info:
------------------------------------------
IGPU Current Frequency...................:    0 MHz
IGPU Minimum Frequency...................:  350 MHz
IGPU Maximum Non-Turbo Frequency.........:  350 MHz
IGPU Maximum Turbo Frequency.............: 1050 MHz
IGPU Maximum limit.......................: No Limit

P-State ratio * 100 = Frequency in MHz
------------------------------------------
CPU P-States [ (8) 21 32 ] iGPU P-States [ ]
CPU C3-Cores [ 0 1 4 6 ]
CPU C7-Cores [ 0 1 2 3 5 7 ]
CPU P-States [ (8) 21 32 ] iGPU P-States [ ]
CPU C3-Cores [ 0 1 4 5 6 7 ]
CPU C7-Cores [ 0 1 2 3 4 5 6 7 ]
CPU P-States [ (8) 21 25 32 ] iGPU P-States [ ]
CPU C3-Cores [ 0 1 2 3 4 5 6 7 ]
CPU P-States [ 8 (17) 21 25 32 ] iGPU P-States [ ]
CPU P-States [ 8 (17) 21 25 32 ] iGPU P-States [ (7) ]
CPU P-States [ 8 17 21 25 32 (33) ] iGPU P-States [ 7 ]
CPU P-States [ 8 17 21 25 (31) 32 33 ] iGPU P-States [ (7) ]
CPU P-States [ 8 17 21 25 31 (32) 33 ] iGPU P-States [ 7 (19) ]
CPU P-States [ 8 17 21 (22) 25 31 32 33 ] iGPU P-States [ 7 19 ]
CPU P-States [ (8) 17 21 22 25 31 32 33 ] iGPU P-States [ 7 19 (20) ]
CPU P-States [ 8 17 21 22 25 (26) 31 32 33 ] iGPU P-States [ 7 (11) 19 20 ]
CPU P-States [ 8 17 21 22 25 26 (31) 32 33 ] iGPU P-States [ 7 11 19 20 ]
CPU P-States [ 8 17 21 22 25 26 (31) 32 33 ] iGPU P-States [ 7 11 19 20 ]
CPU P-States [ 8 17 21 22 25 26 30 (31) 32 33 ] iGPU P-States [ 7 11 19 20 ]
CPU P-States [ 8 17 21 22 25 26 30 (31) 32 33 ] iGPU P-States [ 7 11 19 20 ]
CPU P-States [ 8 17 21 22 25 26 30 (31) 32 33 ] iGPU P-States [ 7 11 19 20 ]
CPU P-States [ 8 17 21 22 25 26 30 (31) 32 33 ] iGPU P-States [ 7 11 19 20 ]
CPU P-States [ 8 (9) 17 21 22 25 26 30 31 32 33 ] iGPU P-States [ 7 11 19 20 ]
CPU P-States [ 8 9 17 21 22 (24) 25 26 30 31 32 33 ] iGPU P-States [ 7 (8) 11 19 20 ]
CPU P-States [ 8 9 17 21 22 24 25 26 (29) 30 31 32 33 ] iGPU P-States [ 7 8 11 19 20 ]
CPU P-States [ 8 9 17 21 22 24 25 26 (27) 29 30 31 32 33 ] iGPU P-States [ (7) 8 11 19 20 ]
CPU P-States [ 8 9 17 21 22 24 25 26 27 (28) 29 30 31 32 33 ] iGPU P-States [ 7 8 11 19 20 ]
CPU P-States [ 8 9 17 21 22 24 (25) 26 27 28 29 30 31 32 33 ] iGPU P-States [ 7 8 11 (17) 19 20 ]
CPU P-States [ 8 9 17 21 22 (23) 24 25 26 27 28 29 30 31 32 33 ] iGPU P-States [ (7) 8 11 17 19 20 ]

Problem reporting files included

Code:
MacBook-Pro:RehabMan $ kextstat|grep -y acpiplat
   13    2 0xffffff7f832f4000 0x66000    0x66000    com.apple.driver.AppleACPIPlatform (5.0) 65E05472-6AE7-3308-8CC8-FA6CB0DB2AEE <12 11 7 6 5 4 3 1>
MacBook-Pro:RehabMan $ kextstat|grep -y appleintelcpu
MacBook-Pro:RehabMan $ kextstat|grep -y applelpc
   90    0 0xffffff7f82cf0000 0x3000     0x3000     com.apple.driver.AppleLPC (3.1) F51595F0-F9B1-3B85-A1C3-F984DAD4107E <88 12 5 4 3>
MacBook-Pro:RehabMan $ kextstat|grep -y applehda
  105    1 0xffffff7f8110c000 0x1d000    0x1d000    com.apple.driver.AppleHDAController (279.48) ED51F180-19C8-3DE1-AF81-0E389D98ADDE <104 103 80 12 7 6 5 4 3 1>
  127    0 0xffffff7f812ae000 0xb5000    0xb5000    com.apple.driver.AppleHDA (999.1.1fc1) 806B8C17-50CA-3C6B-90B3-195F38D8FB89 <126 105 104 103 93 80 6 5 4 3 1>
MacBook-Pro:RehabMan $ ls -l /System/Library/Extensions/AppleHDA.kext/Contents/Resources/*.zml*
ls: /System/Library/Extensions/AppleHDA.kext/Contents/Resources/*.zml*: No such file or directory
MacBook-Pro:RehabMan $ pmset -g assertions
2017-10-07 10:10:37 -0400
Assertion status system-wide:
   BackgroundTask                 0
   ApplePushServiceTask           0
   UserIsActive                   1
   PreventUserIdleDisplaySleep    0
   PreventSystemSleep             0
   ExternalMedia                  0
   PreventUserIdleSystemSleep     0
   NetworkClientActive            0
Listed by owning process:
   pid 103(hidd): [0x0000000b00098049] 00:19:26 UserIsActive named: "com.apple.iohideventsystem.queue.tickle.4294968204.17"
    Timeout will fire in 897 secs Action=TimeoutActionRelease
Kernel Assertions: 0x4=USB
   id=500  level=255 0x4=USB mod=12/31/69, 7:00 PM description=com.apple.usb.externaldevice.14300000 owner=USB Optical Mouse
Idle sleep preventers: IODisplayWrangler
MacBook-Pro:RehabMan $ system_profiler SPSerialATADataType|grep TRIM
          TRIM Support: No

Code:
MacBook-Pro:RehabMan $ sudo touch /System/Library/Extensions && sudo kextcache -u /
Password:
kext-dev-mode allowing invalid signature -67030 0xFFFFFFFFFFFEFA2A for kext X86PlatformPluginInjector.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext USBInjectAll.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext Lilu.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext IntelGraphicsFixup.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext CodecCommander.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext BrcmPatchRAM2.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext BrcmFirmwareRepo.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext AppleBacklightInjector.kext
kext-dev-mode allowing invalid signature -67030 0xFFFFFFFFFFFEFA2A for kext aDummyHDA.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext HoRNDIS.kext
KernelCache ID: 5E3F89DE6242F3443CEF74802BFD96FD
 

Attachments

  • MacBookPro13,3.ioreg
    5.3 MB · Views: 181
  • RehabMan.zip
    69.7 KB · Views: 76
  • X86PlatformPluginInjector.kext.zip
    7.6 KB · Views: 87
  • CLOVER.zip
    1.7 MB · Views: 81
I've implemented HWP power management on my Asus Zenbook UX501VW, MacBookPro13,3.

I'm on Sierra 10.12.6

I used Piker Alpha's script to reduce the idle speed from 1300 MHz to 800 MHz. I'm using an X86PlatformPluginInjector. Low idle speed at 800 MHz works perfectly. But on the full speed end, the processor doesn't go any higher than x33 3300 Mhz instead of the maximum turbo of x35 3500 Mhz.

Cinebench only runs at x31 3100 Mhz at the most, while on Windows Cinebench attains the peak 3500 Mhz speed several times.

I don't know if there's a power saving feature preventing the full 3500 Mhz. Or maybe I've implemented HWP incorrectly?

It likely depends on the FrequencyVectors in your X86PlatformPlugin plist.
And perhaps other (thermal) throttling going on.
You could compare with non-HWP, or there is also Lilu.kext based CPUFriend.kext: https://github.com/PMheart/CPUFriend
 
Back
Top