几年前,如果你想在Mac上运行PC游戏、在Linux上运行游戏,或者在Arm处理器上运行游戏,这听起来几乎是不可能的任务。然而,Asahi Linux背后的开发者们通过一系列开源项目的合作,成功实现了这三个目标。
关键技术组合
Asahi Linux GPU负责人Alyssa Rosenzweig表示,这一壮举得益于多个开源项目的完美协作:
- FEX项目:将x86 CPU代码翻译成Arm代码。
- Wine项目:让Windows二进制文件在Linux上运行。
- DXVK和Proton项目:将DirectX 12 API调用翻译成Vulkan API调用。
- Asahi项目:开发了符合Vulkan标准的苹果图形硬件驱动程序。
技术挑战
由于苹果硅芯片和x86系统在内存寻址方式上的差异,游戏实际上是在虚拟机内运行的。苹果的系统使用16 KB内存页面,而x86系统使用4 KB页面,这导致Asahi和其他一些Arm Linux发行版经常出现问题,而虚拟机则填补了这一差距。
游戏演示
Rosenzweig的帖子展示了多款游戏的截图,包括《控制》、《辐射4》、《巫师3》、《Ghostrunner》、《赛博朋克2077》、《Portal 2》和《Hollow Knight》。尽管这些游戏大多数还不能以每秒60帧的速度运行,但她强调:“正确性第一,性能其次提高。”
驱动程序进展
Asahi的Vulkan和OpenGL驱动程序的工作尤其令人印象深刻,因为苹果自己的macOS图形驱动程序不支持这些API中的大多数。苹果已经弃用但未移除的OpenGL支持最高为4.1版本,自2013年以来一直没有变化,那一年苹果推出了其专有Metal图形API的第一个版本。
Rosenzweig在4月份发布了她的第一个符合Vulkan 1.3版本的Asahi GPU驱动程序,代号为Honeykrisp。从那时起,她增加了支持DXVK翻译层所需的额外扩展,其中一些扩展需要模拟M系列GPU原生不支持的硬件功能。Asahi驱动程序还增加了对OpenCL 3.0的支持。
当前状态和未来展望
新的驱动程序和游戏兼容性目前在Fedora Asahi Remix发行版中作为alpha版本提供,1.0版本将在未来某个时候发布。它将在M1和M2系列Mac上运行——Asahi目前不支持M3系统,因为团队正在努力改进对M1和M2 Mac的支持。Rosenzweig表示,由于模拟开销,大多数游戏将需要16GB的内存。(来自)
0条评论