this post was submitted on 28 May 2024
362 points (97.9% liked)

Linux

55478 readers
865 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS
 

Update : more games!

you are viewing a single comment's thread
view the rest of the comments
[–] SpaceCadet 33 points 1 year ago (4 children)

The post doesn't answer the questions, it's why I asked.

It says:

All running on a krun microVM with FEX and full TSO support 💪

I was not expecting Party Animals to run! That's a DX11 game, running with the classic WineD3D on our OpenGL 4.6 driver!

Now I know some of these words, but it does not answer my question.

[–] nxdefiant@startrek.website 2 points 1 year ago (1 children)

Man ,idk why everyone is being a dick to you. A MicroVM is a virtual machine that only emulates a small subset of an entire OS (a container basically). FEX is an x86 emulator. So yes, this is emulation.

[–] SpaceCadet 1 points 1 year ago* (last edited 1 year ago) (1 children)

Thanks.

FEX is an x86 emulator

So my real question is really about this: common wisdom is that emulating a whole CPU architecture is a performance killer. Does that apply here, and are they just running games that can take the hit? Or phrased differently: given that it's emulated, could this ever have near-native (CPU) performance, or nah?

[–] nxdefiant@startrek.website 1 points 1 year ago

Probably not, but it might be good enough. I'm not an expert in architecture emulation by any stretch, but it might work best for older games where modern performance is a non issue either way.

[–] Rustmilian@lemmy.world 1 points 1 year ago* (last edited 1 year ago)

To answer your question, I'm sure for the x86_64(not separate things btw) specific code it might use some sort of emulator or a translation layer. Idk WTF "microVM with FEX" is, maybe that's it?

But for the DX11 part, that's just the normal DirectX to Vulkan/OpenGL translation layer e.g. WineD3D.
There's actually nothing that special about DirectX on ARM, it's the same API. The translation layer just takes those API calls from DirectX11 and translates them to the equivalent in OpenGL, and then the Asahi Linux OpenGL driver takes of actually executing those commands on the GPU.