@Yobuild &
@CaseySJ! I think I found a
solution to
this problem. Here goes:
A few weeks ago, I was almost done building and testing my system when I noticed that no matter what I did, I was having a strange frame-drop behavior on Heaven and Valley benchmarks. The problem consist on sporadic but persistent and very noticeable FPS drops on a high end card (such as my VEGA 64 Reference edition from Sapphire) on both Heaven and Valley benchmarks. The problem is not present when using other graphically intense applications, for me (and for
@Yobuild at least) it only happens when running those two benchmarks.
The past week I was caught by the marathon of people experimenting with alternatives to
OsxAptioFix2Drv-free2000, so I decided I was going to give a try to some of those approaches using
AptioMemoryFix, that led me to remove
OsxAptioFix2Drv-free2000 and I thought:
I might also remove EmuVariableUefi, because I don't need iMessage and FaceTime. So I did. I was surprised to see that I was having Kernel Panics on Shutdown and Reboot (everything was getting worst by the second at this point). You can practically read my desperation in
this post.
So I decided I was going to perform a fresh install to go back to the good old days of having one problem instead of two. And so I did. Again, Kernel Panics on Shutdown and Reboot. It seemed I was about to collect my third problem when
@rj510 pointed out in
this post that
AptioMemoryFix.efi requires EmuVariableUefi.efi to avoid panic re-boots. Hmm, I didn't know that. A second after that (remember this was my second fresh install of the night?) I realized it was never necessary to re-install macOS, it was just a matter of getting the right combination of files.
Ok so, booted for the third time to a freshly installed macOS. Reboot and.. voila, no Kernel Panic. So that was the solution to a problem I generated myself. BUT, what about the VEGA 64 and Valley/Heaven issue??? You may say. It was also gone!!! I was so happy, I don't know what it was, but it was gone and I get the chance to be happy with my machine again. So, I hurry myself up to move to post-install, did everything right. Since I had a previous installation, I copied my EFI folder from before to the new created EFI partition on my Mojave disc. Reboot (this time with no KP) and proceeded to benchmark the entire system. And to my surprise..
Heaven and Valley are performing with sporadic but persistent and very noticeable FPS drops on my VEGA 64 Reference edition from Sapphire.
That led me to believe that it was the EFI folder (or some driver or kext in it) that was causing the issue. So I proceeded to spend the night debugging my EFI folder. That is, testing every combination and versions of boot loader, drivers, kexts, etc. I initially started with the install EFI folder (the one present on the USB drive when you install the OS) and from there I added one by one the files of my old EFI folder (the one that was causing the issues with the GPU) until I had a hit.
The file causing the issue was ACPISensors.kext
From there, I proceded to create a new EFI folder using VirtualSMC in combination with AptioMemoryFix and EmuVariableUefi and Clover 5018 with all the latest versions of the kexts needed for the GIGABYTE Z390 DESIGNARE, which can be found attached on this post.
The specific version of ACPISensors.kext causing the issue on my system is the version of the driver modified by KGP, which is attached on the first thread of this guide.
I guess one can choose to avoid using ACPISensors.kext or try a different version and see if that works better or just skip FakeSMC.kext and all its companion drivers and stick to VirtualSMC, following @CaseySJ guidelines detailed on the first thread of this thread.
I also noticed another side effect of using ACPISensors.kext:
When using this driver, iStats Menus performs in a weird way when moving between the different drop down menus from the monitor sensors. It's like the data or update frequency of the app was shown choppy (which is also consistent with the sinptoms observed in Heaven and Valley)
Attached, find my EFI folder. This folder is a Vanilla implementation of Clover 5018 based on the work made by @CaseySJ. It uses VirtualSMC in combination with AptioMemoryFix and EmuVariableUefi. Just replace the values for Serial Number, SmUUID and Board Serial Number on SMBIOS and Rt Variables (copy Board Serial Number to MLB field) tabs. I believe it is also prepared for a direct update to 10.14.6, which I wil try out in the next few days.
I now have zero problems on my build. Here are some pictures of the before and after states of the situation:
With ACPISensors.kext:
View attachment 418428
Without ACPISensors.kext:
View attachment 418430
Altough there is a minor improve in general performance here, the important parameter here is
Min FPS, which is 3 times higher by just removing the ACPISensors.kext, resulting in a smoother and higher frame rate across the scenes.
I also want to clarify that I don't have the minor clue on why this happens on this specific conditions, I just know it does. I really hope my experience on this matter and my EFI folder is useful to someone.
Nevertheless,
@Yobuild I would like to ask you to try my EFI folder if possible (or just remove ACPISensors.kext) and launch Heaven and Valley to see if the
fix does something for your system as well or if it's just mine.
Cheers!