Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

crazy dave

macrumors 65816
Original poster
Sep 9, 2010
1,463
1,249
So previously a rumor stated that Apple would create a driver API to allow companies to create device drivers for users to download. There was speculation that Nvidia could use this API to create drivers for its GPUs:

https://www.idownloadblog.com/2019/04/22/macos-10-15-api-device-drivers/

Now it is here officially:

https://developer.apple.com/documentation/driverkit

Does this indeed look like something that could be used to create GPU device drivers or no? While I program in CUDA, I do not interact with GPU drivers on a low-level enough basis to know what is required for a GPU driver. However, I'm concerned that DriverKit does not provide the needed functionality for the same reasons as expressed here:

https://egpu.io/forums/mac-setup/nvidia-drivers-coming-to-macos-after-all/#post-60479

I wouldn't mind if graphical acceleration was impossible but we could use the Nvidia cards for compute ... that would be good enough for me though I know others would still be disappointed. If someone with knowledge of GPU drivers could comment, that would be great!
 
Last edited:
It seems to be a replacement for IOKit. Probably not capable of building GPU drivers. Even the DriverKit link stresses IO operations. Ah well.

https://developer.apple.com/macos/

Screen Shot 2019-06-03 at 4.27.26 PM.png

[doublepost=1559606836][/doublepost]I've also posted in the relevant Nvidia forum board thread in case an actual expert proffers their opinion:

https://devtalk.nvidia.com/default/...for-macos-mojave-10-14-/post/5347954/#5347954
 
In theory this is possible, it's been done on linux before, having GPU drivers in user space. Though idk if driverkit has the required APIs to achieve this, maybe there's a hacker way? Though if there was a hacky way NVidia would've done so by now, my guess is the reason that they needed apple to "approve" the driver is because they needed kernel level access.
 
In theory this is possible, it's been done on linux before, having GPU drivers in user space. Though idk if driverkit has the required APIs to achieve this, maybe there's a hacker way? Though if there was a hacky way NVidia would've done so by now, my guess is the reason that they needed apple to "approve" the driver is because they needed kernel level access.

Interesting ... thanks!
 
What stops them from just releasing a self-signed kext? So what if we need to turn off SIP to run it, those with a Hackintosh or unsupported Mac do this everyday.

Is there more to this than that?

All we have is speculation, but I can think of reasons they wouldn't want to do that:

1) Supporting unsupported hardware, even if Nvidia releases it caveat emptor is a good way to get a bad reputation fast for them if things don't go well. Requiring users to turn off SIP is a poor workaround.

2) While people are inferring from the current situation that Apple and Nvidia are on the outs with each other politically, releasing drivers that encourages people to disconnect security protections and Hackintosh/unsupported Mac users is a really good way to sour that relationship even further (if they are indeed feuding). NB: I have nothing against Hackintoshes or unsupported Macs. I'm stating that Nvidia may not want to go down that path with Apple. It's also not certain that politics is at the root cause of the current issue (i.e. that the current situation may be more to do with financial decisions than animosity between the companies) - it's just a very reasonable hypothesis that it is.
 
  • Like
Reactions: phocion
I have to assume that NVIDIA is simply not particularly interested, since in absolute terms there is not much money to be made in aftermarket GPUs for Macs.
 
Driverkit so far is only available for USB and Network. Apple have to implement some kernel abstraction layer, which I believe will take years to be fully implemented to allow for display drivers. Display drivers surely is a low priority to move into Driverkit as very few developers outside Apple, Intel, AMD and Nvidia will have a need to write drivers to support Macs. There are benefits to have display driver in userland, especially when using egpu, so I am sure that at one point Apple will extend also those. Windows have most part of their display drivers running in userland.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.