A modest plea to add Vulkan to the FreeBSD graphics driver

I have already switched my systems to AMD graphics cards, because of NVidia’s poor support for FreeBS

To be fair, actually AMD has NO support for FreeBSD as of now. But the source code of ICD and kernel drivers are open-source, thus allowing the community to try porting the Linux driver to other OSes.

Another person needing Vulkan support for FreeBSD…

Indeed, getting any kind of official reply would be really nice, so that we know what to expect.

Bump. Should we just package Linux libs and call it a day?

Not completely. Even if employing your approach here it still need kernel bits in the related FreeBSD kernel module code to handle Vulkan/Vulkan-GL-interop related features such as exporting/importing resources through opaque FDs. Currently the corresponding routines will return unsupported simply.

Which kernel bits?

corresponding example: nv_import/export_rm_object_from/to_fd

Ok, wake me up when you actually find software that employs this.

The number of consumers of this is irrelevant to the question from the OP.

I love how this topic has become the most viewed topic on the FreeBSD subforum from the past 2+ years.
Keep it alive guys, it’s really important to all of us and to our future.

So, NVIDIA, any update on plans for the future? Vulkan, no vulkan? It should be obvious that we - FreeBSD desktop users - really care about this. We care about your products and we want to use them. All we need is some confirmation from your side that we will continue to be able to do so in the future.

I would require Vulkan support on FreeBSD for my company.


I would also like this.

I just came here to say that the latest version of Unreal Engine 4 (4.26) no longer supports OpenGL for desktop use.

While doing so, I found out my account no longer exists and I had to recreate it.
EDIT: edit was because I did get my original nickname back, even though I did have to re-register. Odd things happened, don’t know why.

And another quick update: apparently the nvidia driver version 440.100 (for Linux) doesn’t support all the necessary vulkan entry points that UE 4.26 now requires. Things just got real I guess, even with @shkhln 's shim I can’t develop it further using NVIDIA cards…
[2020.12.10-13.01.49:210][ 0]LogRHI: Warning: Failed to find entry point for vkDestroySurfaceKHR
[2020.12.10-13.01.49:210][ 0]LogRHI: Warning: Failed to find entry point for vkGetPhysicalDeviceSurfaceSupportKHR
[2020.12.10-13.01.49:210][ 0]LogRHI: Warning: Failed to find entry point for vkGetPhysicalDeviceSurfaceCapabilitiesKHR
[2020.12.10-13.01.49:210][ 0]LogRHI: Warning: Failed to find entry point for vkGetPhysicalDeviceSurfaceFormatsKHR
[2020.12.10-13.01.49:210][ 0]LogRHI: Warning: Failed to find entry point for vkGetPhysicalDeviceSurfacePresentModesKHR

VK_KHR_surface definitely works. Let’s refrain from turning this into the shim support thread, we can discuss this further on the issue tracker or the FreeBSD forums per your preference.

I didn’t really intend to imply that something is missing in the shim, I did however imply that something is missing in the Linux driver that I can use thanks to your shim. I just did a ‘strings’ on those libraries and couldn’t find any of these entry points. KHR entry points in general are however present, it’s just these 5 ones that don’t seem to exist (although they do, without the ‘vk’ prefix).
Also UE4 doesn’t seem to require these on Windows so I did probably create unnecessary noise.

That all said, still trying to get Vulkan support on FreeBSD, NVIDIA :)

Nothing is missing in the driver. You have a broken Vulkan setup.

You would appear to be right :-D Those entry points are part of libvulkan.so, so now I’m off to find out why they’re not found currently.
Back on track for this post now.

With lib/libnvidia-glvkspirv.so.1 appearing in beta driver, are we close to getting vulkan support? Or is there something else missing?