Live data from Hacker News

Wine 11 rewrites how Linux runs Windows games at kernel with massive speed gains

xda-developers.com

161–170 of 512 posts

Re: Wine 11 rewrites how Linux runs Windows games at kernel with massive speed gains

#162
post #16

Wine is a project that I've grown a near-infinite level of respect for. I don't know for sure, but I suspect that a lot of the work for Wine is boring and thankless. Digging through and trying to get exact parity with both the documented and undocumented behavior of Windows for the past 30 years doesn't sound fun, but it's finding every little weird edge case that makes Wine a viable product. The fact that Wine runs…

I avoided using Wine (and Linux for gaming generally) for years on the sole basis that I assumed what they were trying to do was impossible to do well. Occasionally I’d try wine for some simple game and be impressed it worked at all, but refused to admit to myself that it was something I could rely on. (This was many years ago and I freely admit today that I was wrong.)

Valve's Proton (so Wine + DXVK + some other additions) revolutionized gaming on Linux. I play games both for fun and work, and for a solid 3+ years now, gaming on Linux has been an "it just works" experience for me, and should be for most games that don't use kernel-level anticheat.

Re: Wine 11 rewrites how Linux runs Windows games at kernel with massive speed gains

#163

Not that it really matters, but does this article read as LLM authored to anyone else?

I saw signs of both human and LLM authorship, so it's probably at least not slop. It did take me out of it a bit though, yes.

Re: Wine 11 rewrites how Linux runs Windows games at kernel with massive speed gains

#164
post #16

Wine is a project that I've grown a near-infinite level of respect for. I don't know for sure, but I suspect that a lot of the work for Wine is boring and thankless. Digging through and trying to get exact parity with both the documented and undocumented behavior of Windows for the past 30 years doesn't sound fun, but it's finding every little weird edge case that makes Wine a viable product. The fact that Wine runs…

I avoided using Wine (and Linux for gaming generally) for years on the sole basis that I assumed what they were trying to do was impossible to do well. Occasionally I’d try wine for some simple game and be impressed it worked at all, but refused to admit to myself that it was something I could rely on. (This was many years ago and I freely admit today that I was wrong.)

[flagged]

Re: Wine 11 rewrites how Linux runs Windows games at kernel with massive speed gains

#165
post #88

Is the difference between the NT-style and POSIX-style semaphores essentially just that NT (and now this new API in Linux) supports setting a max value? Why don't POSIX semaphores support this?

WaitForMultipleObjects is fascinating behind the scenes. A single thread can wait on up to 64 independent events, which is done by plumbing the KTHREAD data structure with literally 64 slots for dispatcher header stuff, plus all the supporting Ke/dispatcher logic in the kernel. There’s never been a POSIX equivalent to this. It requires sophisticated kernel support and the exact same parity can’t be achieved in user s…

Yeah I was wondering if some native Linux apps might want to use it, since it is clearly useful and hard to emulate.

Re: Wine 11 rewrites how Linux runs Windows games at kernel with massive speed gains

#166

Earlier quoted context omitted.

It is a superb project, and a hard thing to do. It is a pity that the apps most business people use everyday, like Word and Excel and Outlook don't work in it (Excel 2010 is the last version that has Platinum status). It is interesting that these are harder to get working than games.

> It is interesting that these are harder to get working than games. Games are mostly just doing their own thing, only interacting with the system for input & output. MS Office is using every single corner of Windows: every feature in the XML libraries, tons of .NET type stuff, all the OLE and COM and typelib and compound storage features, tons of Explorer integrations, auto-updating stuff via Windows patching mechan…

> Games are mostly just doing their own thing, only interacting with the system for input & output.

They should be trivial to port then, no?

Re: Wine 11 rewrites how Linux runs Windows games at kernel with massive speed gains

#167
post #25

Before anyone gets too excited about ntsync, the performance gains are (with few exceptions) mild, usually in the lower single percentage range. These extreme gains are the result of benching against vanilla wine without fsync, anyone playing demanding games on linux would have been doing so using fsync. This is mentioned in the article but treated like a side note. I've been running benchmarks between both and while…

>These extreme gains are the result of benching against vanilla without fsync, which is what anyone gaming on linux uses Not for anyone using a kernel without these patches. Which would be most people.

The article says fsync uses futexes which are a completely standard kernel feature.

Re: Wine 11 rewrites how Linux runs Windows games at kernel with massive speed gains

#168
post #102
post #35

Earlier quoted context omitted.

People always say this to shit on glibc meanwhile those guys bend over backwards to provide strong API compatibilities. It rubs me off the wrong way. What glibc does not provide is forward compatibility. An application built with glibc 2.12 will not necessarily work with any older version. Such application could be rebuilt to work with an older glibc as the API is stable. The ABI is not which is why the application w…

> What glibc does not provide is forward compatibility. An application built with glibc 2.12 will not necessarily work with any older version. Is this correct? I think you perhaps have it backward? If I compile something against the glibc on my system (Debian testing), it may fail to run on older Debian releases that have older glibc versions. But I don't see why an app built against glibc 2.12 wouldn't run on Debian…

Sorry I am not sure if 2.12 is a a recent release or older, I made up this number up

If the application is built against 2.12 it may link against symbols which are versioned 2.12 and may not work against 2.11 - the opposite (building against 2.11 and running on 2.12) will work

>If true (I don't think it is), that is a hard showstopper for most companies that want to develop for Linux.

Not really a show stopper, vendors just do what vendors do and bundle all their dependencies in. Similar to windows when you use anything outside of the win32 API.

The only problem with this approach is that glibc cannot have multiple versions running at once. We have “fixed” this with process namespaces and hence containers/flatpak where you can bundle everything including your own glibc.

Naturally the downside is that each app bundles their own libraries.

Re: Wine 11 rewrites how Linux runs Windows games at kernel with massive speed gains

#169
post #66

Earlier quoted context omitted.

Plenty of operating systems work like this. Just not highly commercial ones because proprietary software is the norm on those. From a bit of research it looks like FreeBSD for example only provides a stable ABI within minor versions and I imagine if you build something for FreeBSD 14 it won’t work on 13. Stable ABI literally only benefits software where the user doesn’t have the source. Any operating system which ass…

You can still run x86 binaries on new macbooks. They don't stop working entirely. Using wine I can even run x86 windows binaries.

They announced Rosetta 2 will be deprecated and eventually removed (MacOS 28?)

By that point they already hit the developers enough to get them to port to aarch64

(arguably though this could be a special case because it is due to architectural transition)

Re: Wine 11 rewrites how Linux runs Windows games at kernel with massive speed gains

#170

Earlier quoted context omitted.

I avoided using Wine (and Linux for gaming generally) for years on the sole basis that I assumed what they were trying to do was impossible to do well. Occasionally I’d try wine for some simple game and be impressed it worked at all, but refused to admit to myself that it was something I could rely on. (This was many years ago and I freely admit today that I was wrong.)

[flagged]

You're saying the opposite of what the person you think you're agreeing with is.
Post reply on HN