Contribute
Register

Report your NVIDIA Web Driver and CUDA issues and I'll pass them on to the developers

Status
Not open for further replies.
The lack of communications from Nvidia doesn't inspire any confidence. I submitted feedback on a bug that remains unresolved. I feel like I'm gong to have to bite the bullet and switch to an AMD card in the near future. Honestly, if it weren't for the ridiculously inflated prices, I may have already done so.
 
The lack of communications from Nvidia doesn't inspire any confidence. I submitted feedback on a bug that remains unresolved. I feel like I'm gong to have to bite the bullet and switch to an AMD card in the near future. Honestly, if it weren't for the ridiculously inflated prices, I may have already done so.

At this point, it seems like it's just a race condition or some other such BS bug that's causing the problems on 156/157. Nvidia will probably end up fixing it since it does affect real Macs with eGPU.

I do hope that Nvidia and Apple do kinda make up even if Apple never ships another Mac with an Nvidia card, even just for the sake of real Mac eGPU users to give them more options.

If Vega 64 had been 1080ti level-powerful for gaming, I'd have gotten it over the 1080ti just for the better macOS and Linux support. #IWaitedForVega
 
Given how much we've ruled out as a potential cause of the lag...
From my tests, it seems 156 somehow forces the use of iGPU for System UI, Finder and Safari etc; while at the same time it prevents it from running. Strange bug.
 
From my tests, it seems 156 somehow forces the use of iGPU for System UI, Finder and Safari etc; while at the same time it prevents it from running. Strange bug.

Seems consistent with what we've all seen. The iGPU even alone should be running better than this. The HD 630 or even the HD 4000 doesn't lag like this . . . So, it's gotta also be something messing with it.

I will add that while lag is occurring, CPU usage is very high, much higher than normal, and it's usually caused by processes like WindowServer, Finder, Safari, etc.
 
The iGPU even alone should be running better than this.
It does work better. I’ve made a fresh install, SIP enabled, without GTX 1050. System works great even after installing 156 and latest CUDA. After connecting 1050, the NVIDIA kexts get loaded and the lag starts. By “enabling iGPU cooperative acceleration with Shiki” you meant using boot flag shikigva=12?
 
It does work better. I’ve made a fresh install, SIP enabled, without GTX 1050. System works great even after installing 156 and latest CUDA. After connecting 1050, the NVIDIA kexts get loaded and the lag starts. By “enabling iGPU cooperative acceleration with Shiki” you meant using boot flag shikigva=12?

Yes. I use shikigva=60 tho for /all/ of the Shiki fixes on my 7700K + 1080ti build.

4 for compatible renderer + 8 for VDA whitelist (High Sierra + SKL and up + Nvidia issue fixup) (up to here is your 12; 4 + 8) + 16 to fix iTunes crashes (Common issue with SKL and up + Nvidia) + 32 to replace the board-id in AppleGVA (Fixes issues by faking iMac14,2 specifically for AppleGVA). The sum of 4+8+16+32 is 60, so the 60 value enables all fixes.

See here for an explanation of these options from vit9696 (I have similar hardware to esetnik): https://github.com/vit9696/Shiki/issues/12#issuecomment-346034833

Together, all these fixes from Shiki let VDADecoderChecker pass (GVA info: Successfully connected to the Intel plugin, offline Gen95; Hardware acceleration is fully supported), enable QSV, and fix hardware accelerated video decoding in browsers (Note: Chrome needs experimental acceleration enabled). In addition, all whitelisted apps are able to use the acceleration Shiki enables.

This is the best I can get it. And this cooperative acceleration still works with the 156 driver, meaning that videos, once they start playing, do not suffer from the lag the rest of the system does since they are using the iGPU.

Other people with similar hardware have reported that this still does not fix DRM protected videos in iTunes, at least not under all circumstances, and that they still need Silverlight for Netflix in Safari. I don't use these tho, so I don't have personal experience with them. I do know that 4K Netflix is restricted to Windows and specifically Edge only even if you have compatible Kabylake hardware on macOS.
 
Thank you for the detailed explanations. Shiki needs a wiki, and Clover needs some updates to its wiki. I got „Hardware acceleration is fully supported” with shikigva=12 and ig-platform-id set to 0x59120000. QuickTime Player is doing great on 4K H.264 & H.264, Intel Power Gadget showing about 0,40 at GT frequency. I’ll try the other fixes for iTunes crash.
I’ve noticed another thing odd: I could install 10.13.3 without -disablegfxfirmware, but I can’t boot the installed system without it. It takes 50 retries to give up. Including IM183_0153_B00.fd or Firmware.scap in EFI/Apple didn’t seem to make a difference.
 
Thank you for the detailed explanations. Shiki needs a wiki, and Clover needs some updates to its wiki.

IDK. I find all guides and wikis quickly become outdated, and I'm off reading issues, bug reports, and searching the code for comments again . . . It's a skill I suggest people develop. :/

I got „Hardware acceleration is fully supported” with shikigva=12 and ig-platform-id set to 0x59120000. QuickTime Player is doing great on 4K H.264 & H.264, Intel Power Gadget showing about 0,40 at GT frequency. I’ll try the other fixes for iTunes crash.

Cool. I also recommend that you set the ig-platform to the connector-less value 0x5912003. This is what real Kabylake iMacs use, and it prevents crashes with some applications. Remember that High Sierra does not tolerate displays connected to more than one GPU at a time very well (causes the "WindowServer only ran for 0 seconds" and other "IODisplay gl lock" issues), so there's no real reason to keep the iGPU connectors active anyway.

I’ve noticed another thing odd: I could install 10.13.3 without -disablegfxfirmware, but I can’t boot the installed system without it. It takes 50 retries to give up. Including IM183_0153_B00.fd or Firmware.scap in EFI/Apple didn’t seem to make a difference.

Of course you can install without -disablegfxfirmware, silly. There is no graphics acceleration in the installer. :)

The new "bug" in High Sierra is that the SKL/KBL Intel graphics firmware/ucode upload will never timeout, necessitating -disablegfxfirmware. It'll just try forever. Coffee Lake is, of course, currently immune since without a real Coffee Lake Mac, there's no reason for Apple to try to upload any firmware on Coffee Lake. This will probably change tho once Coffee Lake Macs are out.

Ah. I see. You thought it was referring to the BIOS/Main firmware. No. macOS uploads graphics firmware, or probably better called microcode or ucode, to the Intel Graphics on Skylake and Kabylake Macs. This fails on hackintoshes for unclear reasons even when they have the same Intel Graphics used in real Macs. I think Piker Alpha was looking into it at some point. Clover would probably have to facilitate the process as I expect it relies on functions that would be present in a real Mac's BIOS but not in the various PC BIOS vendors' BIOSes.

Piker's blog confirming that, yes, Apple is loading microcode for the iGPU:

https://pikeralpha.wordpress.com/2017/01/14/does-apple-load-microcode-for-the-igpu/

AFAIK, however, no one has ever gotten it to load successfully on non-Apple hardware . . .

https://www.tonymacx86.com/threads/...e-never-returned-status-1-doing-retry.226107/

You can also upload such Intel Graphics Microcode (GUC) from Linux, and I presume the Windows drivers do it somehow automatically:

https://01.org/linuxgraphics/downloads/firmware

(Remember tho that uploaded microcode is not permanent. It's not like a BIOS update. It needs to be re-uploaded on each boot.)
 
Last edited:
Cool. I also recommend that you set the ig-platform to the connector-less value 0x5912003.
ig-platform connector-less value 0x5912003 doesn’t work: “Graphics driver failed to load: could not load register with Framebuffer” Does boot without any ig-platform-id set. I got the same monitor working at the same time with 1050 DP and Intel HDMI, but the last is just at 1920x1080.
SKL/KBL Intel graphics firmware/ucode upload will never timeout, necessitating -disablegfxfirmware. It'll just try forever
It does timeout, after 50 retries.
Maybe 156 is expecting some Apple graphics firmware. We should try to load it. pikeralpha suggested https://pikeralpha.wordpress.com/2017/01/14/does-apple-load-microcode-for-the-igpu/#comment-8299
 
ig-platform connector-less value 0x5912003 doesn’t work: “Graphics driver failed to load: could not load register with Framebuffer” Does boot without any ig-platform-id set. I got the same monitor working at the same time with 1050 DP and Intel HDMI, but the last is just at 1920x1080.

Strange. Make sure you don't have any IntelGFX AddProperties in place or any FakeIDs. They aren't required for KabyLake Graphics anymore. 0x5912003 works fine for me. I've attached my config.plist in case it would be of any help. I do have a few SSDTs as well, but not for graphics.

It does timeout, after 50 retries.
Maybe 156 is expecting some Apple graphics firmware. We should try to load it. pikeralpha suggested

Interesting. I didn't realize it would ever timeout. I don't think we can load. It expects some sort of hash from Intel Management Engine ("[IGPU]: Hash data from ME never returned"), and I'm not sure how we can provide it. I assume it's using the hash for decryption and this is part of DRM on new Macs, and may explain why iTunes and other Safari DRM are not working on more modern hack hardware . . .
 

Attachments

  • config.plist
    6.8 KB · Views: 215
Status
Not open for further replies.
Back
Top