Contribute
Register

[GUIDE] Injection of AMD Vega Power and Fan Control Properties

@jaymonkey This is the guide I've been waiting for. This cleared up a lot of mixed information I had. Thanks for the info! Everything running smoothly now. However, I do have one concern: Vega64 LED lights blink to full 100% then back to one LED. Not stuck at 100% but does go back and forth between 0 and 100 rapidly when scrolling or typing, etc. In windows, they are on the lowest LED light in idle only turn more than that under load (when gaming or so). It is very jumpy in MacOS Mojave. Normal for Hackintosh?


@mafx3,

Yes I see the same behaviour on my Sapphire Vega 64 liquid Cooled GPU, the way the Apple drivers use the Vega is very different to the way Windows does especially with regards to power management hence the reason/need for the fix for power and fan control properties.

As @cnrd suggests above this is most likely down to MacOs clocking the GPU up and down very quickly to help manage heat and TDP.

I have a theory that because our Vega's are identified as 'Built-In' on the PCIe bus, MacOS assumes that they are the same Vega(s) that are used in iMac Pro which uses up to two Vega 64's in a thin chassis with a not so great thermal cooling solution.. so anything they can do to keeps temps down will help them manage heat.

I suspect that we'll continue to see Apple improve the Vega drivers in future releases of Mojave as they continue to fine tune the eGPU support, hopefully we'll get better out of the box Power and Fan management with no need to alter the default power and fan parameters.

I also think that there is a lot more to be learned from the Apple Vega Drivers and what all of the PP_ properties do, the work @lihaoyun6 has done with the VGTab utility is only really scratching the surface, the hackingtosh community is very resourceful so who knows what we'll see in the future, maybe WhatEverGreen will add additional support for Vega that will include injection of correct SoftPowerPlayTable's ....

Cheers
Jay
 
Last edited:
After running ./gfxutil -f GFX0, I am still getting "unsupported registry entry" in the terminal. I had followed the your guide to properly install Lilu and WEG in L/E/. Here is my conflig.plist and kext in /L/E/. Any ideas?

@mrlim,

I suspect the issue may be that you are using Clover to set the IGPU PlatformID (Clover -> Graphics -> ig-platform-id) which may be causing a conflict with WEG and causing it to terminate before it can configure the Vega ... as the Lilu & Plugin Guide states ... you must remove all Clover IGPU related flags and values and allow WEG to do the work, failure to do so can cause WEG not to load correctly.

Use the guide to set the following Device Properties :-

AAPL,ig-platform-id = 59120003 (03001259 in reverse byte order for Clover configurator)
device-id = 59120000 (12590000 in reverse byte order for Clover configurator)

And try again
Cheers
Jay
 
Last edited:
Just wanted to report in that I have been running the same profile with lower idle fan speed (900 RPM), undervolting and OC (About 50W undervolting) since december when I got my card, and have been having no problems.


@cnrd

Nice Job ... even a slight undervolt can help with TDP and temps, I have my HBM undervolted at 1250Mv and max Memory Clock at 1050Mhz and so far no problems .. i got a nice bump in performance and temps stay lower for longer. I haven't touched the GPU die/core clocks as being a Liquid Cooled edition it already clocks up to 1750Mhz which is pretty good for a Vega, i believe that the liquid cooled editions use binned chips which is why they are able to reach such high clock rates.

not sure if you already put it in the guide, but some of the custom cards (At least all of the ones with "zero fan" mode (Such as Nitro+)) uses on-board fan control which is not controlled by SoftPowerPlay, this is why some cards have not had problems with the fans going wild in macOS


I was aware that some cards do not have the fan problems but did not know it was related to those cards that have a Zero fan mode. I'll add a bit of info about this to the guide, thanks for the tip.

Cheers
Jay
 
Last edited:
Hi @jaymonkey , first of all... thank for your help and work here!

So, I got your same GPU (Vega 64 LC) and I'm unable to tame my fans, I tried building a Power table in VGTab and then tried to modify my SSDT or add the generated .kext in EFI with no success. IOReg terminal command keeps showing me a idle 1600 rpm fan very loud! I don't know hot to handle this, I'm getting mad. Since we got the same card, can you please help me fix this stuff? Will be very grateful.
 
So, I got your same GPU (Vega 64 LC) and I'm unable to tame my fans, I tried building a Power table in VGTab and then tried to modify my SSDT or add the generated .kext in EFI with no success. IOReg terminal command keeps showing me a idle 1600 rpm fan very loud! I don't know hot to handle this, I'm getting mad. Since we got the same card, can you please help me fix this stuff? Will be very grateful.


@pieropontra,

You don't state in your post if you tried the Clover Injection method ... only that you tried the generated VGTab kext and/or SSDT method neither of these methods worked for me, the only thing that worked for me was direct Injection of the Vega Power and Fan control properties via Clover .. without this fix in place the Fan Speed would decrease as GPU temp went up !!

Initially I just used the default SoftPowerPlayTable created by the VGTab utility (Vega 64 LC Profile with no edits) and then injected the properties using the method detailed in the guide. My Fan/Pump Idle's at 1500 RMP (45%) and is barely audible.

Once I had the Temps being controlled correctly i then started playing around with under-volting and Overclocking the HBM Memory.

If as you say your fan is running at 1600 RPM and it is still making a lot of noise then something is not right as at that speed it should be very quiet .. especially on a Liquid cooled card.

Perhaps you should check that nothing is interfering with the Rad Fan which may be causing the noise ?

Check that it spins freely when you spin it by hand (with power off) .. if it's making a grinding noise (and nothing is interfering with it) then its possible that the bearings or fan motor is faulty ?

Thats about all I can suggest right now ...

Cheers
Jay
 
Last edited:
Hi @jaymonkey , first of all... thank for your help and work here!

So, I got your same GPU (Vega 64 LC) and I'm unable to tame my fans, I tried building a Power table in VGTab and then tried to modify my SSDT or add the generated .kext in EFI with no success. IOReg terminal command keeps showing me a idle 1600 rpm fan very loud! I don't know hot to handle this, I'm getting mad. Since we got the same card, can you please help me fix this stuff? Will be very grateful.

@pieropontra ,

I would try lowering the Target Temp see if you get a different result. I followed this guide to download VGTab, tested many different configs but ultimately what worked best for me was leaving everything default except:
Memory Voltage: 1100mV
Idle Speed: 650
Target Speed: 2500
Target Temp: 35

I will attach picture. If I left my target temp at 70 like it came default initially, but for some reason my temps will stay near 70 celcius after a few minutes of boot so my fan speed stayed high. For the record, I have a different vega 64 than you so may not work for you but I figured it is worth mentioning my troubles and what I did to fix them. Good luck
 

Attachments

  • VGTab Settings.png
    VGTab Settings.png
    243.9 KB · Views: 193
ultimately what worked best for me was leaving everything default except:
Memory Voltage: 1100mV
Idle Speed: 650
Target Speed: 2500
Target Temp: 35

@mafx3,

Setting the Target Temp at 35 degs will just make the Fan kick in at the Target Speed of 2500 at a much lower than necessary temp and i doubt it will be able to keep it at 35 degs if the GPU load is left on for more than a few mins.

On a stock Liquid Cooled Vega card it's possible to keep the GPU temp somewhere between 65 to 70 degs C with a fan speed of 2400-2500 RPM ..

A stock air cooled card would never be able to keep GPU at 70 degs with Fan Speed of 2500 let alone 35 degs

Even a custom water cooling solution would not be able to maintain a target temp of 35 degs.

Cheers
Jay
 
@jaymonkey ,

I don't think I expressed myself correctly. What I meant was that at IDLE, on the desktop screen, my temps would eventually reach 70 degrees from a cold boot. So basically, on regular task like web browsing my vega would constantly stay ~65-75 degrees. Suddenly fans would kick in very loud, then would reduce. However, never changing temps and would always stay at ~70. Therefore, fans kept kicking in loudly every few minutes or so for no reason under no load.

By lowering the target temp on VGTab to 35, now at IDLE, desktop screen or web browsing, etc. My temps stay ~37-42 and fans NEVER increase from 1000rpm unless of course I put it under load with LuxMark or a game, etc in which they do increase upwards of 2200 rpm. My vega card under load of course reaches the 70+ degrees as well. But will return to the ~40's degrees. And I can confirm, that while under NO load, fans are quiet and speeds are below 1000 rpm and temps are kept low as well. I attached some screen shots for proof. And believe me when I say that I struggled with this a whole day with VGTab just to keep those temps down from 70 when not under load :banghead:
 

Attachments

  • Screen Shot 2019-01-12 at 1.00.44 PM.png
    Screen Shot 2019-01-12 at 1.00.44 PM.png
    19.7 MB · Views: 158
  • Screen Shot 2019-01-12 at 1.05.34 PM.png
    Screen Shot 2019-01-12 at 1.05.34 PM.png
    18.2 MB · Views: 135
  • Screen Shot 2019-01-12 at 12.58.23 PM.png
    Screen Shot 2019-01-12 at 12.58.23 PM.png
    22.5 MB · Views: 120
  • Screen Shot 2019-01-12 at 12.59.34 PM.png
    Screen Shot 2019-01-12 at 12.59.34 PM.png
    19.7 MB · Views: 117
I don't think I expressed myself correctly. What I meant was that at IDLE, on the desktop screen, my temps would eventually reach 70 degrees from a cold boot. So basically, on regular task like web browsing my vega would constantly stay ~65-75 degrees. Suddenly fans would kick in very loud, then would reduce. However, never changing temps and would always stay at ~70. Therefore, fans kept kicking in loudly every few minutes or so for no reason under no load.


@mafx3,

Thanks for clarifying the reason ... I guess that makes a bit more sense now and I can understand while you need to set the target temp low ... this is a strange behaviour and an interesting solution ... It seems that not all Vega GPU's are made (or at least the VBIOS) equal.

Can you please post what make and model type your Vega card is for future reference.
I'd like to make some sort of table that recommends working settings for each make/type of card.

Cheers
Jay
 
@mafx3,

Thanks for clarifying the reason ... I guess that makes a bit more sense now and I can understand while you need to set the target temp low ... this is a strange behaviour and an interesting solution ... It seems that not all Vega GPU's are made (or at least the VBIOS) equal.

Can you please post what make and model type your Vega card is for future reference.
I'd like to make some sort of table that recommends working settings for each make/type of card.

Cheers
Jay

ASRock Phantom Gaming X Vega 64 8G

For convenience, I attached the GPU-Z information from Windows side as well as VegaTab kext and data file using the setting mentioned before.
 

Attachments

  • 2019-01-12.png
    2019-01-12.png
    71.6 KB · Views: 125
  • VegaTab_64_data.txt
    4.2 KB · Views: 102
  • VegaTab_64.kext.zip
    3.3 KB · Views: 87
Back
Top