← Back to context

Comment by david-gpu

6 hours ago

If they open-sourced their userland drivers, and/or released their internal technical documentation, which would have a similar effect, they would open themselves to at least two big problems.

First, they would spill all of their secret sauce for others to "draw inspiration" from. And there is a lot of expensive secret sauce in there. Not all of it is protected by parents either; more on that below.

Second, they would make it a lot easier for competitors and patent trolls alike to seek litigation. One of the criteria thech companies have for filing a patent is how easy is it to detect when it is being violated. Open source your stuff, and you make it much easier for the competition to detect any violation.

And it is not like these companies are violating patents intentionally; much the opposite. But there are only so many ways to implement Vulkan or DirectX, and completely independent teams will come up with similar enough solutions, and with broad enough patents, that there will be overlap every now and then. That is why they file patents in the first place. Only the high cost of litigation and the risk of mutually-assured destruction keeps legitimate vendors from rattling sabers more often.

Then you have NVidia with their immense investment and advantage on the software side, from the CUDA runtime to countless libraries like CUBLAS and cuDNN. That investment goes much beyond a relatively simple Vulkan/DirectX driver.

So the question is less "why don't more of them open-source userland". The question is "why do any of them do it"?

Source: former insider with enough patents under my belt that I lost count.

> If they open-sourced their userland drivers, and/or released their internal technical documentation, which would have a similar effect, they would open themselves to at least two big problems.

> First, they would spill all of their secret sauce for others to "draw inspiration" from. And there is a lot of expensive secret sauce in there. Not all of it is protected by patents either

Then why does Apple allow Asahi to reverse-engineer their low-level APIs? Are their lawyers not paying attention?

Do you have any thoughts on the question you posed? Amdgpu and mesa is working out fairly well for amd, but yes, there is also still a proprietary userland for it too. Intel I think is using mesa code for their Windows drivers too. How are they different?

  • I genuinely don't know. They are smart people, they know the game. They must have figured out that there is an upside for them.

    Just speculating here. Maybe they have big customers that communicated to them that they will choose them over the competition if they open more of their software stack. Maybe they are less afraid of being sued because they are the underdog and they believe that the authorities would not be kind to a behemoth suing them, or they believe that the behemoth would not sue them because of the bad press it would generate vs the settlement they would get.

    I actually don't know. But I am sure they have good reasons, just like the corps that keep it closed also have good reasons. It is not "good" vs "evil".