Intel's Graphics Driver Now Sharing ~60% Codebase Between Windows/Linux, 90~100% The Performance
Intel today is announcing their Server GPU for the data center based on their Xe-LP microarchitecture with an initial focus on high-density, low-latency Android cloud gaming and media streaming. For as exciting as the Intel Server GPU is, some exciting Intel Linux graphics driver details were also disclosed.
The H3C Server GPU is their first discrete GPU for the data center. This first dGPU product based on Gen12 Xe-LP has a 128-bit pipeline and 8GB of LPDDR4 memory. The H3C model packages four Intel Server GPUs onto a three-quarter-length, full-height PCI Express 3.0 x16 PCB and can support 100+ Android cloud gaming users. Up to four Intel H3C XG310 cards per server is the target configuration, or sixteen Intel Server GPUs in total per server. The Intel Server GPU is now shipping but pricing and availability details remain light.
Before getting to the exciting Linux bits, Intel also is announcing today that oneAPI Gold will be out in December and they are bringing the Intel Implicit SPMD Program Compiler (ISPC) to run on top of oneAPI Level Zero.
Lisa Pearce as Intel's Graphics Software Engineering Director presented during the briefings on their Linux graphics driver and preparing for them for the data center. She noted how just two years ago only around ~10% of their driver code was re-used across platforms (namely Windows and Linux) and their Linux driver delivered roughly 60% the performance of Windows. They also officially only supported one distribution.
But now as we approach 2021, there is around ~60% code re-use and the Linux performance is at 90~100% that of Windows and are validating on all three major enterprise Linux distributions. The relative performance for 3D is at roughly 90% depending upon quality of the Linux game port or if native, among other factors, while the compute performance is roughly on par between Windows and Linux.
In preparing for Intel GPUs appearing in more data centers, Intel is also launching a "GPGPU Documents" portal. At dgpu-docs.intel.com is this new portal with information on installing new/updated drivers for different distributions, recent driver releases, and more. Additional resources should be available on their GPGPU Documents area in the coming months.
Project Flipfast
The Project Flipfast initiative announced today is another effort to improve the Linux gaming experience. Project Flipfast is for running graphical apps/games in a virtual machine while leveraging zero-copy sharing of video memory buffers between the guest and host for offering "native" performance. This Flipfast technology is also leveraged by Intel graphics in the data center for when running tasks within VMs.
Linux Is Riding High For Intel Graphics
Afterwards I was able to talk more with Lisa about the company's current trajectory around their open-source/Linux driver efforts. Of the ~60% driver code in common between platforms, it boils down to the Intel Graphics Compiler (IGC) and Media/Compute components being shared now across Windows and Linux. The OpenGL and Vulkan drivers and the kernel mode drivers remain separate code-bases. This recent push around ramping up their Linux driver efforts come down squarely on their data center ambitions. Since ~2018 when forming their GPU plans for the data center they began integrating their formerly separate Linux graphics driver team and making other fundamental changes to bolster their Linux support.
IGC In Mesa
A few months ago I reported on Intel's Windows driver beginning to use IGC and there was even an internal prototype for Mesa. In speaking with Lisa, that IGC work for Mesa is advancing. In adapting their ANV Vulkan driver to use IGC rather than their internal Intel Mesa compiler is yielding promising performance results that appear to be measurably faster than the current compiler. Intel is also looking at using IGC for their Iris Gallium3D OpenGL driver too but the Vulkan driver is understandably the immediate focus. Right now on Linux the Intel Graphics Compiler is just used by their OpenCL/Level-Zero compute stack.
While providing faster performance and more code re-use across platforms, there are implications though on Intel's Mesa drivers using IGC: the Intel Graphics Compiler would be a new build dependency for Mesa and Linux distributions would need to begin packaging it, adding to additional size on the image. The Intel IGC core binary comes in at roughly an additional 30MB to be squeezed on Linux desktop ISOs.
They are ambitiously pursuing the use of IGC within the Intel Mesa code and likely in H1'2021 it will at least be offered as a run-time option as an alternative to their current shader compiler. That will allow for further testing of the IGC path and additional time for distributions to begin adapting their Mesa builds around IGC and comparing the performance. If all goes well by the end of next year we could potentially see IGC used by default within Mesa.
GUI Control Panel For Linux?
Also notable on the Intel Linux graphics driver radar for 2021 is possibly having an Intel Command Center / graphics driver control panel. Right now Intel's Linux driver stack already exposes most of the tunables that can be found within Intel's Windows driver area, but not GUI driven. Much of the tunables and monitoring interfaces for the Intel Linux driver are only accessible via command-line interfaces, setting not always well documented environment variables or module parameters, etc. Lisa and her team are looking at offering some sort of GUI control center for Linux systems but not necessarily as elaborate as their Windows driver. They are seeking more feedback about what Intel GPU Linux users would like to see out of such control center and with a bit of luck we could potentially see it materialize in 2021.
Those were the main Linux takeaways from the discussion. Intel's open-source software efforts from oneAPI through their graphics/compute driver stack remain on a very exciting trajectory and performing well and reliably with near perfect execution. From the Linux driver/software side there is little more to ask of them as they effectively have all their bases covered as they prepare to move more into the discrete graphics market. In case you missed it from a few weeks back see the Intel Xe Graphics tests from OpenCL to oneAPI Level Zero to Vulkan.
If you enjoyed this article consider joining Phoronix Premium to view this site ad-free, multi-page articles on a single page, and other benefits. PayPal or Stripe tips are also graciously accepted. Thanks for your support.