Breaking architecture barriers: Running x86 games and apps on ARM

Tony Wasserka

Playlists: '39c3' videos starting here / audio

Presenting FEX, a translation layer to run x86 apps and games on ARM devices: Learn why x86 is such a pain to emulate, what tricks and techniques make your games fly with minimal translation overhead, and how we are seamless enough that you'll forget what CPU you're using in the first place!

ARM-powered hardware in laptops promises longer battery life at the same compute performance as before, but a translation layer like FEX is needed to run existing x86 software. We'll look at the technical challenges involved in making this possible: designing a high-performance binary recompiler, translating Linux system calls across architectures, and forwarding library calls to their ARM counterparts.

Gaming in particular poses extreme demands on FEX and raises further questions: How do we enable GPU acceleration in an emulated environment? How can we integrate Wine to run Windows games on Linux ARM? Why is Steam itself the ultimate boss battle for x86 emulation? And why in the world do we care more about page sizes than German standardization institutes?

This talk will be accessible to a technical audience and gaming enthusiasts alike. However, be prepared to learn cursed knowledge you won't be able to forget!

Licensed to the public under http://creativecommons.org/licenses/by/4.0

Download

These files contain multiple languages.

This Talk was translated into multiple languages. The files available for download contain all languages as separate audio-tracks. Most desktop video players allow you to choose between them.

Please look for "audio tracks" in your desktop video player.

Embed

Share:

Tags