We Rely On Your Support: This site is primarily supported by advertisements. Ads are what have allowed this site to be maintained for the past 15 years. We do our best to ensure only clean, relevant ads are shown, when any nasty ads are detected, we work to remove them ASAP. If you would like to view the site without ads while still supporting our work, please consider our ad-free Phoronix Premium. You can also consider a tip via PayPal.Intel Linux Graphics Driver Adding Device Local Memory - Possible Start of dGPU Bring-Up

A big patch series was sent out today amounting to 42 patches and over four thousand lines of code for introducing the concept of memory regions to the Intel Linux graphics driver. The memory regions support is preparing for device local memory with future Intel graphics products.

The concept of memory regions is being added to the Intel "i915" Linux kernel DRM driver for "preparation for upcoming devices with device local memory." The concept is about having different "regions" of memory for system memory as for any device local memory (LMEM). Today's published code also introduces a simple allocator and allowing the existing GEM memory management code to be able to allocate memory to these different memory regions. Up to now with Intel integrated graphics, they haven't had to worry about this functionality not even with their eDRAM/L4 cache of select graphics processors.

This device-local memory for future Intel GPUs is almost surely for Intel's discrete graphics cards with dedicated vRAM expected to debut in 2020. For the past several generations of Iris Pro with eDRAM, the Intel Linux driver has already supported that functionality. The patch message itself makes it clear that this is for "upcoming devices" but without enabling any hardware support at this time. This memory region code doesn't touch any of the existing hardware support such as the already mainlined Icelake "Gen 11" graphics code.

It's clear from the patches that this upcoming hardware is a ways out. With not hooking into any actual hardware support at this time, one of the patches is for providing fake LMEM (local memory) regions in order to exercise this new code path. Meanwhile we know that for months already Intel's Linux graphics driver developers have been running Icelake pre-production hardware in their labs, thus making us think this is early stage work for the dedicated "Xe" graphics upbringing as opposed to some magical Gen11 level addition the company hasn't talked publicly about yet. It would also be rather late for Intel to only now be publishing this code if it's for a product in the months ahead considering they are usually much more punctual in their Linux driver support in order to align it with the kernel release cadence and the kernel adoption cycles used by the major Linux distributions. This fake local memory region is just carving memory out of the system RAM for testing the new infrastructure. That fake support is also indicated that it will be upstreamed rather than a quick hack not for merging to the kernel, likely indicating it will be some time at least before their developers will have real Intel hardware locally with device local memory.

It wouldn't be surprising to see Intel's open-source Linux driver developers already preparing for future Intel discrete GPU products. With past generations of Intel graphics, we generally see the first Linux kernel patches roughly a year or so out from the actual hardware debut -- or the originally estimated debut for said products. While the design of their initial discrete graphics processor might not be finalized yet, it would make sense for their developers to begin making the necessary code restructuring such as for device local memory with discrete GPUs. That said, I wouldn't expect until later in 2019 at least before seeing more definitive open-source driver work around their discrete GPU efforts. Stay tuned to Phoronix for my close monitoring of the open-source landscape.

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 10,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 OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter or contacted via MichaelLarabel.com.

The mission at Phoronix since 2004 has centered around enriching the Linux hardware experience. In addition to supporting our site through advertisements, you can help by subscribing to Phoronix Premium. You can also use our NewEgg.com shopping links when making online purchases or contribute to Phoronix through a PayPal tip.