FEX-Emu: Mesa interactions in an emulated environment

6 Oct 2022, 10:35
45m
201 (Opus Hall)

201

Opus Hall

30 S 10th Street, Minneapolis, MN
Talk (full slot, Wineconf and FOSS XR only) Main Track

Speaker

Ryan Houdek (FEX-Emu)

Description

FEX-Emu is an emulator for running x86 and x86-64 applications on AArch64.
Running Mesa inside of this emulated environment is an interesting challenge that cross architure, ABI, and kernel API boundaries.

A short primer on how FEX-Emu works then we will walk through the challenges of running video drivers on architectures that they were not originally designed for. What it means to run inside of an emulated environment from the mesa perspective. Then what we are doing for performance optimizations, debug improvements, and future endeavors.

Challenges include:

  • IOCTL/DRM interface isn't the same between architectures
  • Virtual address space not being 47-bit
  • Jumping across architecture boundaries for thunks
  • Running 32-bit applications as a 64-bit process
  • Compiling AArch64 drivers for an x86/x86-64 environment
GSoC, EVoC or Outreachy No
Code of Conduct Yes
For which conference do you send the proposal? X.Org Developers Conference 2022

Primary author

Ryan Houdek (FEX-Emu)

Presentation Materials

There are no materials yet.
2022 Platinum Sponsor
CodeWeavers

2022 Gold Sponsors
Arm

NVIDIA

AMD

Google

Microsoft

2022 Silver Sponsors
Collabora

Igalia

FEX-Emu

The Linux Foundation

2022 Bronze Sponsors
Khronos

2022 Supporters