Live data from Hacker News

AAA Gaming on Asahi Linux

rosenzweig.io

151–160 of 382 posts

Re: AAA Gaming on Asahi Linux

#151

Earlier quoted context omitted.

> Is this potentially a part of why Apple doesn't want to support Vulkan? Because they don't want to implement common Vulkan features in hardware, which leads to less than ideal performance? Yes, it's a big reason. I tried to port the yuzu switch emulator to macos a few years ago, and you end up having to write compute shaders that emulate the geometry shaders to make that work. Even fairly modern games like Mario Od…

Why Apple does not just implement it? They have more resources than anyone in the world. Patents?

Geometry shaders have long been disfavored by all ISVs , not just Apple. It’s just most include the software path.

If you’re using geometry shaders, you’re almost always going to get better performance with compute shaders and indirect draws or mesh shaders.

A lot of hardware vendors will handle them in software which tanks performance. Metal decided to do away with them rather than carry the baggage of something that all vendors agree is bad.

It takes up valuable die space for very little benefit.

Re: AAA Gaming on Asahi Linux

#152
post #113

Earlier quoted context omitted.

Yes. Haven’t tried those games, but on apple silicon whisky app emulates with gameporting toolkit + wine/proton. For intel silicon I think it was also possible but not sure.

Oh, wow, I did not realize how many games worked with this: https://docs.getwhisky.app/game-support/index.html I had assumed the lack of Vulkan on macOS was a major issue. Apparently not!

Cause MoltenVK [1] is used, I think.

---

[1]: https://github.com/KhronosGroup/MoltenVK

Re: AAA Gaming on Asahi Linux

#153
post #7

This is super cool. So, wait, does this mean that gaming is better on Linux, on a Mac?

No, you’ll still get better performance, more features supported and lower overhead running with Game Porting Toolkit currently.

That includes raytracing support and heterogeneous paging support which are two things Alyssa calls out explicitly herself. Not to mention the VM overhead.

That’s not to say Alyssa’s work is not very impressive. It is. But GPTk is still ahead.

That’s not even including the other aspects of Mac support that Asahi still needs to get to. Again, very impressive work, but the answer to your question is No.

Re: AAA Gaming on Asahi Linux

#154

Earlier quoted context omitted.

You’d need to compare with what can be done on macOS including with things like crossover and the GPT. AFAICT, the Linux side is making progress, but still more games can be run from macOS.

The Mac efforts rely on MoltenVK for and Vulkan needs which itself relies on the underlying Metal API. As I understand it Asahi/Honeykrisp driver for Vulkan does not rely on the Metal API so it actually can do more conformant Vulkan than Crossover/Whisky can. For example tranform feedback and other geometry shader stuff will work on Asahi. MoltenVK is working on it, but not there yet.

You’re ignoring D3DMetal which is what is most commonly going to be used and equivalent to what Proton is doing to convert D3D to VK.

Most games are D3D. A very small minority are Vulkan from the get go.

Re: AAA Gaming on Asahi Linux

#155

Earlier quoted context omitted.

This is definitely not true. M3 is 2x - 3x more efficient than Lunar Lake on the same N3B node.

I don't think that's true. M3 has much better idle/near-idle power draw, but actual performance per watt when doing things is pretty close.

No, it’s the other way around. Intel has generally caught up in idle power draw but is still severely behind in performance per watt.

https://www.notebookcheck.net/Intel-Lunar-Lake-CPU-analysis-...

https://youtu.be/ymoiWv9BF7Q

Re: AAA Gaming on Asahi Linux

#157
post #140

Earlier quoted context omitted.

I guarantee you'll get much further than you would have previously done in the same amount of time, just by virtue of it being able to point you in the right direction. You don't need perfection when learning, you need a wayfinder, and it can do that just fine.

It won’t point you in the right direction though. At least in my experience. It will only give very superficial answers. And fe just trying to write rust - it will try to explain the error message but most of the time says nothing new and to find out how to fix it you will have to read docs and understand things the old way anyway. At least in my experience

your experience is not my experience and i have done my share of systems programming

Re: AAA Gaming on Asahi Linux

#158

From a performance and technical perspective this is incredible. Well done! It will never happen, but my dream is for the Asahi devs, Valve, and Apple to all get together to build out a cross-platform Proton to emulate and play games built for Windows on both x86 and ARM hardware running Linux. A Steam Deck with the performance and power efficiency of an M-series ARM chip and the entire library of games that run on P…

If you want it to happen, ask them for it every day. You are their constituent.

Re: AAA Gaming on Asahi Linux

#159

> Tessellation enables games like The Witcher 3 to generate geometry. The M1 has hardware tessellation, but it is too limited for DirectX, Vulkan, or OpenGL. We must instead tessellate with arcane compute shaders > Geometry shaders are an older, cruder method to generate geometry. Like tessellation, the M1 lacks geometry shader hardware so we emulate with compute. Is this potentially a part of why Apple doesn't want…

> Is this potentially a part of why Apple doesn't want to support Vulkan? Because they don't want to implement common Vulkan features in hardware, which leads to less than ideal performance? Yes, it's a big reason. I tried to port the yuzu switch emulator to macos a few years ago, and you end up having to write compute shaders that emulate the geometry shaders to make that work. Even fairly modern games like Mario Od…

Why couldn't you just use MoltenVK?

Re: AAA Gaming on Asahi Linux

#160
post #152

Earlier quoted context omitted.

Oh, wow, I did not realize how many games worked with this: https://docs.getwhisky.app/game-support/index.html I had assumed the lack of Vulkan on macOS was a major issue. Apparently not!

Cause MoltenVK [1] is used, I think. --- [1]: https://github.com/KhronosGroup/MoltenVK

Not really.

PC games use DirectX as their graphics API, so you need something that can translate from DirectX to the native graphics API your OS is running.

On MacOS you'd be translating from DirectX to Metal and Apple provides the emulation software (D3DMetal) as part of the Game Porting Toolkit.

On a Steam Deck, Proton uses Vulkan on Linux as the native graphics API, so in that case you are translating from DirectX to Vulkan.

> DXVK (which translates Direct3D 8, 9, 10 and 11 calls to Vulkan on the fly), vkd3d-proton (which translates Direct3D 12 to Vulkan)

https://emulation.gametechwiki.com/index.php/Proton

Post reply on HN