Xe,英特尔为其 GPU 开发的新 Linux 驱动程序

Xe

Xe 是用于现代 iGPU 和 dGPU 的新 Linux 内核图形驱动程序

英特尔最近宣布发布代号为“Xe”的Linux内核新驱动程序的初始版本。他们表示,这些新驱动程序旨在与基于英特尔Xe架构的集成GPU和独立显卡配合使用,该架构从Tiger Lake处理器开始应用于集成显卡,以及Arc系列中的部分显卡。

驱动程序开发的目标是提供一个支持新型芯片的框架,而不是依赖于支持旧平台的代码。此外,还宣布将更积极地与其他DRM(直接渲染管理器)子系统组件共享Xe代码。

该代码最初旨在支持各种硬件架构,可用于在 x86 和 ARM 系统上进行测试。

英特尔的 Linux 图形驱动程序工程师一直在悄悄地为更新的 Gen12/Xe 图形开发新的 Direct Rendering Manager 驱动程序,并在避免携带旧的 i915 驱动程序包袱方面取得了长足的进步。

这是 Xe 的演示文稿,它是支持两者的英特尔 GPU 的新驱动程序。
来自 Tiger Lake 的集成和离散平台(第一个平台 英特尔 Xe 架构)。 这个新飞行员的目的是要有一个新的基地 从那里开始工作不受旧平台的阻碍,同时还采用 有机会重新设计我们的控制器以增加 drm 中的共享 子系统,利用并允许我们为其他人做出更多贡献 共享组件,如 TTM 和 drm/scheduler。 内存模型基于VM bind 类似于 i915 实现。 同样的 execbuf Xe 的实现与 i3 上的 execbuf915 非常相似

其中提到,目前的实现仍被视为供开发人员讨论的实验性选项,尚未准备好集成到内核的主要部分。 旧 i915 控制器的工作不会停止,其维护将继续进行。 新的 Xe 控制器计划于 2023 年准备就绪。

代码处于已经可以使用和体验的阶段
从 Tiger Lake 开始支持多个平台,并提供初始支持
在 Mesa 中实现(用于 Iris 和 Anv,我们的 OpenGL 和 Vulkan 驱动程序),以及
与在 NEO 中一样(对于 OpenCL 和 Level0)。 A Mesa MR [2] 和 NEO 已经发表
实施将于明年初公开发布。 我们还有套房。 来自 IGT for XE,即将在 IGT 上市。

在新控制器中,与屏幕交互的大部分代码都借用了 i915 控制器,未来,开发人员计划确保两个控制器共享此代码,以避免典型组件的重复(目前,此代码只是简单地重新构建了两次,但正在讨论其他代码共享方案)。

Xe中的内存模型与i915内存模型的实现非常接近,execbuf的实现与i3代码中的execbuf915非常相似。 为了支持 OpenGL 和 Vulkan 图形 API,除了 Linux 内核的驱动程序之外,该项目还准备了 Iris 和 ANV Mesa 驱动程序的更改,以通过 Xe 模块工作。

在目前的形式下,Xe-Mesa 链接已经足够成熟,可以运行 GNOME、OpenGL 和基于 Vulkan 的浏览器和游戏,但仍然存在一些问题和错误,导致它崩溃。 此外,尚未完成任何性能优化工作。

最后值得一提的是,英特尔的计划是继续推进该项目,并将其与 Mesa 逐步合并,但其整体的主要草案将保留下来,以便于进行测试。

如果您有兴趣了解更多信息,可以点击以下链接查看详情


在 Google 中将其添加为首选来源