GPU Passthrough For FreeBSD's Bhyve Can Work But Is Fairly Rudimentary

Written by Michael Larabel in BSD on 6 November 2019 at 01:27 AM EST. 4 Comments
FreeBSD's Bhyve hypervisor has had a wild ride over the past half-decade of development for advancing BSD virtualization support. Bhyve is mostly used on the server front but can also fill some desktop use-cases now that there is GPU pass-through support working albeit not yet polished.

FreeBSD contributor Yan Ka Chiu talked at last month's EuroBSDCon 2019 conference in Norway about Bhyve and accelerated graphics support. There isn't yet working support for the likes of Intel GVT or any virtual GPU solution for allowing shared GPU access / OpenGL acceleration from host to be exposed to guest VMs, but there is GPU pass-through support. The GPU pass-through support is somewhat similar to some of the hurdles that can be experienced on Linux too like worrying about the hardware initialization state before passing, the topology of the graphics processor, and various hardware quirks. This also doesn't work for booting a Windows VM but at least seems to be working out for FreeBSD-on-FreeBSD scenarios.

Yan Ka Chiu has been able to get both AMD Radeon (Polaris) and NVIDIA (Turing) graphics working with Bhyve GPU pass-through with some steps to overcome.

As for the GPU pass-through performance, using the basic glmark2 benchmark he found the performance to be about 66% that of the bare metal speed. More details in this slide deck.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week