Xe, Intel's nieuwe Linux-stuurprogramma voor zijn GPU's

Xe

Xe is de nieuwe Linux-kernel grafische driver voor moderne iGPU's en dGPU's

Intel heeft onlangs de eerste versie van een nieuwe driver voor de Linux-kernel aangekondigd , met de codenaam "Xe". Volgens Intel zijn deze nieuwe drivers bedoeld voor gebruik met geïntegreerde GPU's en losse grafische kaarten gebaseerd op de Intel Xe-architectuur, die gebruikt wordt in geïntegreerde grafische kaarten vanaf de Tiger Lake-processors, en bepaalde grafische kaarten uit de Arc-familie.

Het doel van de driverontwikkeling is het bieden van een raamwerk voor de ondersteuning van nieuwe chips, onafhankelijk van code voor de ondersteuning van oudere platforms. Ook wordt aangekondigd dat de Xe-code actiever gedeeld zal worden met andere componenten van het DRM-subsysteem (Direct Rendering Manager).

De code is oorspronkelijk ontworpen om verschillende hardware-architecturen te ondersteunen en is beschikbaar voor testen op x86- en ARM-systemen.

Intel's Linux grafische stuurprogramma-ingenieurs hebben stilletjes gewerkt aan een nieuwe Direct Rendering Manager-stuurprogramma voor de nieuwere Gen12/Xe grafische kaart en hebben stappen gezet om te voorkomen dat ze de oude bagage van de i915-stuurprogramma's meesjouwen.

Dit is een presentatie voor Xe, een nieuwe driver voor Intel GPU's die beide ondersteunt.
geïntegreerde en discrete platforms van Tiger Lake (eerste platform met Intel Xe-architectuur). De bedoeling van deze nieuwe pilot is om een ​​frisse basis te hebben om daaruit te werken wordt niet belemmerd door oudere platformen, terwijl ook de mogelijkheid om onze controller opnieuw te ontwerpen om het delen in de drm te vergroten subsysteem, waardoor we meer kunnen bijdragen aan anderen Gedeelde componenten zoals TTM en drm/scheduler. Het geheugenmodel is gebaseerd op VM bind die vergelijkbaar is met de i915-implementatie. Evenzo de execbuf De implementatie voor Xe lijkt sterk op execbuf3 op de i915

Er wordt vermeld dat de huidige implementatie nog steeds wordt beschouwd als een experimentele optie voor discussie door ontwikkelaars, die nog niet klaar is voor integratie in het hoofdgedeelte van de kernel. Het werk aan de oude i915-controller stopt niet en het onderhoud ervan gaat door. De nieuwe Xe-controller moet in de loop van 2023 klaar zijn.

De code bevindt zich in een stadium waarin deze al functioneel en ervaren is
ondersteuning voor meerdere platforms vanaf Tiger Lake, met initiële ondersteuning
geïmplementeerd in Mesa (voor Iris en Anv, onze OpenGL- en Vulkan-stuurprogramma's), evenals
zoals in NEO (voor OpenCL en Level0). Er zijn een Mesa MR [2] en NEO gepubliceerd
De implementatie zal begin volgend jaar openbaar worden gemaakt. We hebben ook een suite. van IGT voor XE die binnenkort op IGT zal worden vermeld.

In de nieuwe controller is het grootste deel van de code voor de interactie met de schermen overgenomen van de i915-controller . In de toekomst willen de ontwikkelaars ervoor zorgen dat deze code in beide controllers wordt gedeeld om duplicatie van typische componenten te voorkomen (momenteel wordt deze code simpelweg twee keer gecompileerd, maar er worden alternatieve opties voor het delen van code besproken).

Het geheugenmodel in Xe komt heel dicht in de buurt van de implementatie van het i915-geheugenmodel en de implementatie van execbuf lijkt sterk op execbuf3 uit de i915-code. Om de OpenGL en Vulkan grafische API's te ondersteunen, heeft het project naast de driver voor de Linux-kernel ook wijzigingen voorbereid voor de Iris- en ANV Mesa-drivers om via de Xe-module te werken.

In zijn huidige vorm is de Xe-Mesa-link al volwassen genoeg om GNOME-, OpenGL- en Vulkan-gebaseerde browsers en games uit te voeren, maar er zijn onder andere nog enkele problemen en bugs die ervoor zorgen dat hij crasht. Er is ook nog geen prestatieoptimalisatie uitgevoerd.

Tot slot is het de moeite waard te vermelden dat Intel van plan is om eraan te blijven werken en het in kleinere delen met Mesa te integreren, maar het hoofdconcept voor het geheel zal behouden blijven naarmate het project vordert, zodat het testen eenvoudiger wordt.

Als je meer wilt weten , kun je de details vinden via de volgende link.


Voeg dit toe als voorkeursbron in Google.