Jump to content
30960 posts in this topic

Recommended Posts

So Clover now handles power management? No SSDT needed? I removed mine and seems ok on my skylake rig.

 

This confuses me, there has always been support for c and p state generation in clover. The only problem is that it doesn't have an exhaustive list of cpus and values like that script does so it usually severely unpowers the cpu causing it to usually stay stuck in a subset of the available p-states...

 

Man,

Clover handles Power Management since 2010 (Chameleon AMLGenerator by Kozlek) while Pike made his script only in 2011.

 

I was confused by his statement as well, lol.

 

So how come his script has been recommended so much?

 

Who's recommending that script? Why not do what is suggested by us and modify your original firmware tables to be correct for compliance with Apple firmware.

  • Like 1

Could you point me in right direction to study what you suggested?

Thank you

How so?

It's pretty easy, the most difficult part is understanding ACPI. You need to dump your original ACPI tables from clover or linux or something else like Aida64 from windows. DO NOT dump from macOS. Get iasl, here is binary built from RehabMan. Decompile the tables with

iasl -d TABLENAME.aml
Then edit the tables and correct the definitions of _PSS and _CST to APSS and ACST. There are topics you can search for to figure out exactly how to do it but this will give better frequency to power ratio that is expected by the motherboard to perform these power changes correctly. I think to recompile to table its like

iasl -tc TABLENAME.dsl
Don't quote me on that though lol.

 

EDIT: Which also reminds me that I just updated my firmware and did not get the new tables to patch... Probably not the same now. So that might explain my AICPUPM panic... I'm an idiot.

 

EDIT2: You should make copies of the tables in a backup location you can easy copy back if you mess up as it may overwrite the original table when you recompile... I can't remember. I'm sure if you look at the help you can find out what the commands are and use them accordingingly.

  • Like 3

It's pretty easy, the most difficult part is understanding ACPI. You need to dump your original ACPI tables from clover or linux or something else like Aida64 from windows. DO NOT dump from macOS. Get iasl, here is binary built from RehabMan. Decompile the tables with

iasl -d TABLENAME.aml
Then edit the tables and correct the definitions of _PSS and _CST to APSS and ACST. There are topics you can search for to figure out exactly how to do it but this will give better frequency to power ratio that is expected by the motherboard to perform these power changes correctly. I think to recompile to table its like

iasl -tc TABLENAME.dsl

I have a perfectly working DSDT just always been concerned / worried about cpu power management.

Attached is my clover extracts  :yes:

If you wanna look see.

origin.zip

I'm not going to do it for you man, put in the research, learn about it.

Was just seeing if you could take a look and see if i need to do adjustments, and if i do can you point me to where i need to look.

This is my speedstep on Skylake (#1 in signature):

- no external SSDT

- config->ACPI->SSDT->Generate->PState=Yes, CState=Yes.

- CPU->SavingMode=15

- HWPEnable=NO

others by default.

Снимок экрана 2017-11-21 в 22.45.14.png


And  this is speedstep for my IvyBridge laptop (#2 in signature)

boot-arg = -xcpm

no CPU SSDT

Generate=YES (don't know if needed for xcpm)

Screen Shot 2017-11-18 at 14.08.32.png

 

In past I had Dell Inspiron 1525 with Core 2 Duo Penryn. I aalso had very good speedstep for it.

Moreover. PlimitDict and UnderVoltStep was invented for those computer to reduce temperature.

 

  • Like 6

This is my speedstep on Skylake (#1 in signature):

- no external SSDT

- config->ACPI->SSDT->Generate->PState=Yes, CState=Yes.

- CPU->SavingMode=15

- HWPEnable=NO

others by default.

What does - CPU->SavingMode=15 do?

Also what is C2, C4 and C6 options for in cpu section?

  • Like 1

This is my speedstep on Skylake (#1 in signature):

- no external SSDT

- config->ACPI->SSDT->Generate->PState=Yes, CState=Yes.

- CPU->SavingMode=15

- HWPEnable=NO

others by default.

attachicon.gifСнимок экрана 2017-11-21 в 22.45.14.png

And  this is speedstep for my IvyBridge laptop (#2 in signature)

boot-arg = -xcpm

no CPU SSDT

Generate=YES (don't know if needed for xcpm)

attachicon.gifScreen Shot 2017-11-18 at 14.08.32.png

 

In past I had Dell Inspiron 1525 with Core 2 Duo Penryn. I aalso had very good speedstep for it.

Moreover. PlimitDict and UnderVoltStep was invented for those computer to reduce temperature.

 

Slice,

Pretty sure that it needs c and p states to work, even for xcpm but your first one there is waaaaaaaaaaaayyy wrong, unless the intel power gadget is wrong. You are not even getting 20W of power when that CPUs TDP is 65W, your CPU is being under powered by p-state generation. The second appears to have about the same power usage (because it probably is set to use same amounts of power in SSDT as the first), although it has a lower TDP of 35W. I still suspect that since you're generating both, that this is the case for anyone who generates, the TDP will not be correct.

@Devs/Coders

 

A DXE Driver could modify cpu things like turbo or similar parameter overriding motherboard and cpu original features?

 

 

I am referring to this because I have read on anandech of a change to override max turbo part on xeon V3 (surely) and maybe on Xeon V4 cpu

 

Is there some clover coders/devs who are using these kind of cpu?

Should be a great clover features.. :-)

 

links

https://github.com/f...y/v3x4/releases

 

https://forums.anandtech.com/threads/what-controls-turbo-core-in-xeons.2496647/

Slice,

Pretty sure that it needs c and p states to work, even for xcpm but your first one there is waaaaaaaaaaaayyy wrong, unless the intel power gadget is wrong. You are not even getting 20W of power when that CPUs TDP is 65W, your CPU is being under powered by p-state generation. The second appears to have about the same power usage (because it probably is set to use same amounts of power in SSDT as the first), although it has a lower TDP of 35W. I still suspect that since you're generating both, that this is the case for anyone who generates, the TDP will not be correct.

I think TDP is not influenced although it included into state generator in Clover.

I checked my performance, it is the same as in Windows 7 Pro by same tests.

  • Like 2

 

FakeSMC failing to load?

 

 

 

The installer path to boot.efi on the "Boot OS X" partition for Fusion Drives changed from /System/Library/CoreServices/boot.efi (in El Capitan) to /com.apple.boot.R/boot.efi (in Sierra & High Sierra)...

 

El Capitan

attachicon.gifBoot OS X and com.apple.boot.S for El Capitan install.png

 

vs Sierra & High Sierra

attachicon.gifBoot OS X and com.apple.boot.R for HSierra install.png

 

 

can you test Lilu.kext for fusion drive?

https://github.com/vit9696/Lilu/issues/31

 

thanks in advance

 

EDIT1.

removed file.

sorry lastest commit of lilu causes kp. 

  • Like 1

I think TDP is not influenced although it included into state generator in Clover.

I checked my performance, it is the same as in Windows 7 Pro by same tests.

 

The whole point of p-states is to change the power consumption, it most definitely matters. I imagine that it would work somewhat if you enter the exact TDP wattage for your CPU in settings but if not then you are not getting correct p-states, or even close. Since generate p/c-states is enabled by default, most people probably are not setting the TDP, that should maybe put out some sort of warning.

 

EDIT: I don't see how you could only be getting ~20W of consumption on a 65W TDP CPU, even in windows. That can't possibly be correct, just one core of my CPU uses 20W+ when at full load. Currently I am overclocked and with just five minutes of pretty much just typing it maxed out at 27.99W for just one core...

@Devs/Coders

 

A DXE Driver could modify cpu things like turbo or similar parameter overriding motherboard and cpu original features?

 

 

I am referring to this because I have read on anandech of a change to override max turbo part on xeon V3 (surely) and maybe on Xeon V4 cpu

 

Is there some clover coders/devs who are using these kind of cpu?

Should be a great clover features.. :-)

 

You can just use that driver already, but I don't think you read the readme because it says you need modified firmware to use.

What about results like this? I see many of those, that have much higher scores, just that one in particular is only operating at the correct base frequency 2.7GHz where yours is the turbo 3.3GHz, and still has higher scores.... I would show you my results showing vastly different outcomes in macOS but I can't boot macOS currently because I can't figure out why I am getting panic. That's for later on when I have time to sit and mess with it though. As for windows, here is HWMonitor of my CPU for just one second, nothing open. I have it set to 3.3GHz with 36/38/40/42 turbos, and higher overhead for those states. Appears that all cores at 1.6GHz uses only 2.21W. The whole CPU package went up to 24.86W at only 20% usage because the uncore appears to always consume ~3.5W. Three of the cores jumped up to 2.7GHz at some point, can't tell you if it was at once or individually. But during this time 20.11W was used when only at 20% CPU usage. Which makes sense 20W * 20/100 = 20W * 5 = 100W. The TDP is 95W, so I'm sure the math works out better if I knew exactly which cores were being used for how long, etc. You should dump your generated p-states table and compare them to the original table, what is the difference in expected power consumption for each state? If this number is too high, you will be stuck in lower p-states, if this number is too low then you will get higher p-states only. The CPU generates so much power for each state (you can't change this unless it's one of the newer CPUs and you reprogram the hardware power features), so if the CPU is producing 40W but all your states say you need 100W, you will never reach any lower states. Similarly if your CPU produces 40W but you set all your states to say you need 20W, you will never go above your lowest state. I think I said that right, if not I'm pretty sure you can understand what I mean.

post-749318-0-71421400-1511490742_thumb.png

My base frequency is

0:102  0:000  BrandString = Intel® Core™ i5-6400 CPU @ 2.70GHz

but I show in About Mac my custom value

	<key>CPU</key>
	<dict>
		<key>FrequencyMHz</key>
		<integer>3300</integer>

His result is higher may be because of RAM.

He also may has overclocked FSB.

 

And there is no twice difference as you say about 20W 65W

Hi apianti

you think bad :-)

I have also modified my bios in all way I can (deleting microcode or changing it to old e newest one)

 

I also have used in clover a Haswell EP fakecpuid to understand if it is possible to have some changes..but for now I am loosing

Many people with V3 Xeon had success using this "exploit"

And I was asking here if maybe it is possible to change after Bios post those parameters..

Thank you for your attention

 

 

 

You can just use that driver already, but I don't think you read the readme because it says you need modified firmware to use.

My base frequency is

0:102  0:000  BrandString = Intel® Core i5-6400 CPU @ 2.70GHz

but I show in About Mac my custom value

	<key>CPU</key>
	<dict>
		<key>FrequencyMHz</key>
		<integer>3300</integer>

His result is higher may be because of RAM.

He also may has overclocked FSB.

 

And there is no twice difference as you say about 20W <-> 65W

 

I understood why yours said 3.3.GHz was just pointing it out so it's clear they are the same. Here's several examples with only 8GB, still a lot higher than yours, 1, 2, 3, and there are plenty more. Also the Windows values are into the high 5000s (a few in the 6000s) and 16/17000 multicore, with the same CPU and amount of ram (either 8GB or 16GB). Although it does not really appear ram amount affects the score since there are plenty of results directly right next to each other with both. As for overclocking, there are way too many scores, some for prebuilt machines, to think that they are all overclocked, and most prebuilt machines can't overclock. And two other things, I seem to recall that geekbench uses the frequency to calculate the score in some way, and it would say the base frequency as something higher than 2.7GHz (since the multiplier would still be 27, but the bus clock would be different than 100MHz). That CPU is locked so it can't be overclocked in any other way. I'm not sure about what you mean twice difference between 20W <-> 65W? If you are saying there is no difference between operating at 20W or 65W, then that's not correct. Your CPU will function faster the more power it uses.... This is the reason for the U, Y, T, P, L, etc, endings, they have a reduced TDP compared to the models that do not, like i5-6500 has 65W TDP, and i5-6500T has 35W. Under the premise you said these otherwise identical CPUs perform similarly, however the only difference is the TDP and the i5-6500T has lower operating frequency and turbo...

 

Hi apianti

you think bad :-)

I have also modified my bios in all way I can (deleting microcode or changing it to old e newest one)

 

I also have used in clover a Haswell EP fakecpuid to understand if it is possible to have some changes..but for now I am loosing

Many people with V3 Xeon had success using this "exploit"

And I was asking here if maybe it is possible to change after Bios post those parameters..

Thank you for your attention

 

It's just a driver that configures the CPU differently. You can just use that driver already, the problem is you need to modify your firmware to remove the code that already setups the CPU for that stuff. If you're going to modify your firmware (or have) then just add that driver as well, or set it up to be loaded by your firmware or clover.

 

EDIT: Oh, realized you were asking if you could do this after post without modifying firmware? No not possible, I imagine what's going on is that the CPU has a MSR that is read/write-once, and once it is written cannot be changed.

In xeon V4 , in my case removing from bios V4 related microcode inhibits system to boot with an error code (A2 on Asus motherboard, it is IDE related but I don't understand well)

 

I think it is a problem with tdp and also like OSX or windows act with it when cpu is loaded @ his max for all cores.

In my case I have a TDP of 150 (max)

OSX during cpu Cinebench test reaches a frequency of 2,6 Ghz for all cores and a tdp of about 124 

Windows reaches 2.8 Ghz and a tdp of 137

test result is 2950 for OSX and 3150 foe MS Windows

 

I am asking if it is possible to "bypass" in safe way some limitation..

then it would be great to be able to use Xeon V3 bug..but for now in my test it is not possible

 

It's just a driver that configures the CPU differently. You can just use that driver already, the problem is you need to modify your firmware to remove the code that already setups the CPU for that stuff. If you're going to modify your firmware (or have) then just add that driver as well, or set it up to be loaded by your firmware or clover.

You said my CPU is underpowered? 20W while it should be 65W? But I see no such differencies in CPU score.

I set SavingMode to 15. It means slow transition from low frequency to high frequency. In the case of gigbench it may leads to lower result because ot many transition up and back as we see in Intel Power Gadget.

At evening I will try to overclock my BIOS.

You said my CPU is underpowered? 20W while it should be 65W? But I see no such differencies in CPU score.

I set SavingMode to 15. It means slow transition from low frequency to high frequency. In the case of gigbench it may leads to lower result because ot many transition up and back as we see in Intel Power Gadget.

At evening I will try to overclock my BIOS.

 

But I just showed you multiple examples of geekbench scores much higher than yours, also it should be running at full load, so the taking more steps to get up there shouldn't matter. I have a feeling it's actually more related to how often and how long it enters turbo. And even in Intel power gadget, there is some telling evidence. In your first one which is 65W TDP, you can see that it doesn't really bounce around at the top power levels, it's almost a flat line, but the frequency bounces. The second one with a 35W TDP, both lines bounce accordingly.

Having locked MSR 0xE2 we have no chance to control C-state PM?

 

No, it means we have no way to change the mode that CPU reports it supports:

15    CFG Lock (R/WO) When set, lock bits 15:0 of this register until next reset.
14:11 Reserved.
10    I/O MWAIT Redirection Enable (R/W) When set, will map IO_read instructions sent to IO register specified by MSR_PMG_IO_CAPTURE_BASE to MWAIT instructions
9:3   Reserved.
2:0   Package C-State Limit (R/W) Specifies the lowest processor-specific C-state code name (consuming the least power). for the package. The default is set as factory-configured package C-state limit.
      The following C-state code name encodings are supported:
        000b: C0/C1 (no package C-sate support)
        001b: C2
        010b: C6 no retention
        011b: C6 retention
        100b: C7
        101b: C7s
        111b: No package C-state limit. Note: This field cannot be used to limit package C-state to C3.

I installed Clover in ESP in macOS,after that I packed it to EFI.zip,then I reinstalled Windows 7 x64,I unpacked EFI.zip to ESP,but nothing happened in AMI UEFI Boot Entry,I have to rename bootmgfw.efi to bootmgfw.old(in Ubuntu Live,because bootmgfw.efi is the only boot efi for Windows 7 x64) so that UEFI OS (Clover) Boot Entry is automatic add to AMI UEFI Boot Entry,after that AMI UEFI can Boot Clover,Clover boot bootmgfw.efi,bootmgfw.efi boot Windows 7 x64,.The question is does install Windows 7 x64 under Windows 7 UEFI retail DVD or install Clover under macOS installer automatic add Windows Boot Manager(bootmgfw.efi) or UEFI OS(CLOVERX64.efi)?If I want to manually add them in EFI environment,how to do that?I know that is a stupid question but I don't get any answer on Internet.Thank you.

×
×
  • Create New...