35 comments

[ 2.6 ms ] story [ 67.0 ms ] thread
> FEX allows you to run x86 applications on ARM64 Linux devices, similar to qemu-user and box64. It offers broad compatibility with both 32-bit and 64-bit binaries, and it can be used alongside Wine/Proton to play Windows games.

> It supports forwarding API calls to host system libraries like OpenGL or Vulkan to reduce emulation overhead. An experimental code cache helps minimize in-game stuttering as much as possible. Furthermore, a per-app configuration system allows tweaking performance per game, e.g. by skipping costly memory model emulation. We also provide a user-friendly FEXConfig GUI to explore and change these settings.

> On the technical side, FEX features an advanced binary recompiler that supports all modern extensions of the x86(-64) instruction set, including AVX/AVX2. The heart of this recompiler is a custom IR that allows us to generate more optimized code than a traditional splatter JIT. A comprehensive system call translation layer takes care of differences between the emulated and host operating systems and implements even niche features like seccomp. A modular core enables FEX to be used as a WoW64/ARM64EC backend in Wine.

Used by the new Steam Frame (https://store.steampowered.com/sale/steamframe) which is an ARM64 Snapdragon 8 Gen 3 that will run PC and PCVR gaming titles.

Not just used by, Valve is sponsoring FEX.

https://news.ycombinator.com/item?id=45903610#:~:text=Valve%...

I wouldn't call this random comment reliable testimony that they are sponsoring FEX.
They took their sweet time but both the project lead Ryan Houdek as well as Valve developer Pierre-Loup Griffais (username Plagman here in the comments) have now come out saying that FEX-Emu was not just sponsored by Valve but is actually their project and that they approached suitable developers with the idea who they have been paying for the development: https://www.gamingonlinux.com/2025/12/valve-have-been-fundin...
CodeWeavers' Crossover just released a Preview version for Arm that incorporates Fex and allows games like Cyberpunk 2077 to run: https://www.codeweavers.com/blog/mjohnson/2025/11/6/twist-ou...

I've tested it on an Ampere workstation, and was trying it on a Pi, but it seems with Trixie, there may be some bugs with both that and box64 right now, I was having trouble with both of them.

Hey, it's that YouTube guy with cursed Raspberry Pi setups!
What motivates CodeWeavers specifically to work on this?
It is quite likely that Valve is paying for this work. It benefits the Steam Frame.
Does that mean I can run windows games on my rpi? (In theory at least)
(comment deleted)
[flagged]
A binary recompiler for running x86 on a different architecture? Where have I heard this story before?

https://en.wikipedia.org/wiki/FX!32

The example that most people think of these days is Rosetta. But I also always think of FX32 as I think it was the first.

The Alpha was such a great platform. It is too bad it’s reign was so brief.

I'n incredibly impressed by valve's commitment to playing the long game. It makes sense to have the frame by arm since the system is lighter and its clear this is just the trojan horse to get arm linux into every gamer's house. I wouldn't be surprised if we end up with an arm steamdeck 1-2 version from now when the tech is ready.
Last I heard, they don't even have bosses there, a flat hierarchy. They vote on things and pick each other to work on teams and appraise performance. Perhaps that radical culture has merit to it?
I would appreciate more if they also would take devs into SteamOS water, instead of relying on Microsoft kindness.
Helps that they are in dominant position and basically just need to not fuck up
I tried out FEX on a modern ARM board with a discrete GPU. Really impressed with the performance.

https://interfacinglinux.com/2025/06/30/fex-emu-gaming-on-th...

FEX is a CPU JIT, so your GPU settings are irrelevant to it, it is translated but not by FEX, and there is no real perf hit for the GPU

The old games don't really matter with regards to FEX perf, so the only relevant bit is the semi newer games at 30/40 fps, which seems very slow to me, given that you are only running at 1080p/Medium, so you likely have a CPU bottleneck there.

How does fex deal with the fact that the memory model on arm is weak and x86 is total store ordering. It seems like would need to hammer performance by putting memory barriers everywhere to handle all cases. Perhaps fex only works when there are well defined mutexes it can gain visibility into? anyone know?
It would be nice to see more Arm chips adopt Apple's approach (which fixes this problem) for Rosetta 2. Basically, Apple's chips can be switched into a TSO mode and a few other minor tweaks that make x86 code run much, much faster.
Now we just need a decent ARM Linux laptop.
Snapdragon Elite X laptops are plenty decent.
Get a MacBook with Asahi Linux
Anyone can recommend something viable for simple tasks? I don't need 32GB of VRAM, just a reliable machine for everyday tasks that's decent, lightweight, has a good battery.

(I know I'm describing an M2 Air, but I'd like to explore alternatives.)

Alternatively: we need fex-emu to run on macos.
Curious how this will impact the major games that are incompatible due to denuvo type stuff
I believe a lot of the folks working on FEX are also core contributors to Dolphin, the Wii/GC emulator.
One problem I see is that (e.g.) Qualcomm Adreno GPUs don't even run most Windows games well when executed natively under Windows, due to games only being optimized for GeForce and Radeon. I assume this problem only gets worse when trying to run DirectX games through some sort of translation layer with FEX/DXVK.
How is it different to box64? I couldn't really find much online comparing these two except a brench by box64 themselves.
Some companies like to stress the efficiency or performance of Arm SoCs, but really this is a hedge against more expensive x86 hardware. AMD has increased prices of mobile SoCs radically recently. I'm looking forward to having more affordable SoC options for laptops, handhelds and desktops, perhaps from Mediatek or other lower-cost vendors.

The history of the PC is one of commoditization. A fractured multi-polar landscape is detrimental to the ecosystem/productivity and should ultimately fail.

x86 emulation is an important puzzle piece, and I'm happy Valve recognizes this and sponsors it.

So, can you run Steam and games on a Raspberry Pi 500?