this post was submitted on 27 Oct 2023
508 points (93.2% liked)

Technology

57626 readers
5608 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
 

Linux vs Windows tested in 10 games - Linux 17% faster on Average::Computers, hardware, software and gaming in Spanish and English

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 17 points 10 months ago (2 children)

It must be very hard to exactly compare games between Windows and Linux because it's possible that emulation in Proton, WINE or the driver means some settings or extensions might not be enabled even if they appear to be. DirectX emulation is also bound to slow things down so a game probably has to be use OpenGL or Vulkan directly.

So while I can well believe that Linux can keep up and possibly exceed Windows, it needs a careful technical eye to ensure a true comparison is happening.

[–] IntrepidIceIgloo 28 points 10 months ago (2 children)
[–] [email protected] 10 points 10 months ago* (last edited 10 months ago) (1 children)

Wine is an emulator. It might not have started as such when it was winelib but it is now, especially when running binaries. If in doubt read their own FAQ where they take pains to describe it depends what you're doing and what is meant by emulation.

[–] [email protected] 4 points 10 months ago (1 children)

Go read the code. It's a reimplementation of core Windows DLLs. Quite a clean one. There is also a daemon that fakes a NT kernel. It's worth a read.

[–] [email protected] 2 points 10 months ago (1 children)

I know what it is thanks. I even contributed code a long time back to it.

[–] [email protected] 2 points 10 months ago (1 children)

Then why are you saying it's going to pay any kind of emulation cost? It's not really much different to what MS do. NT has it's own sys calls that MS call in their Win32 implementation. WINE calls POSIX calls in their's.

Well done contributing anyway. I haven't, but I crawled all over the source when I developed on Windows as it was better than MSDN for the semi-documented stuff (that was only documented at all because EU forced them).

[–] [email protected] 1 points 10 months ago (1 children)

I didn't and I don't know where you got the idea I did.

[–] [email protected] 1 points 10 months ago

Cool, well happy it was just a miss understanding, but I'm clearly not the only one who thought you were saying that. Might be worth clarifying in you earlier posts.

[–] [email protected] 7 points 10 months ago (2 children)

but the E literally stands for emulator

(I'm kidding)

[–] [email protected] 21 points 10 months ago

Just in case someone sees this and doesn't understand all this, WINE is an acronym that literally means "WINE Is Not an Emulator."

[–] [email protected] 4 points 10 months ago (1 children)

And it is an emulator these days. Their own website says it and it's obviously one just thinking about it for a second. The reason it started with that acronym was because originally you could take Windows source code, compile it against winelib and run it natively. It is an emulator when actual Windows binaries are executed against it.

[–] raspberriesareyummy 11 points 10 months ago (2 children)

It is an emulator when actual Windows binaries are executed against it.

I suppose I am not sure entirely what constitutes an emulator and what doesn't, but I always thought an emulator mimics (emulates) a certain systems architecture, i.e. has to be slower by design than the real thing. In wine, however, windows system calls are replaced / re-routed to the underlying linux system calls which are often much faster, which is why wine often exceeds windows in performance executing windows binaries (assuming you can get them to run at all :)

[–] [email protected] 8 points 10 months ago (1 children)

An emulator simulates hardware with software. That's why it's slower than running on the original hardware, unless you're running on a hardware significantly faster than the original.

But Wine is not an emulator because it mimics software with different software. You still run on the same hardware, that's why wine/proton only runs on x86.

So the whole "wine is not an emulator" might sounds like pedantry but it's not. It's an important distinction. Because it's not an emulator there is no inherent perf cost.

[–] raspberriesareyummy 1 points 10 months ago

thanks, this is exactly my understanding, just worded better because I was apparently linguistically challenged on my previous post... :D

[–] [email protected] 4 points 10 months ago* (last edited 10 months ago)

I suppose I am not sure entirely what constitutes an emulator and what doesn’t, but I always thought an emulator mimics (emulates) a certain systems architecture, i.e. has to be slower by design than the real thing. In wine, however, windows system calls are replaced / re-routed to the underlying linux system calls which are often much faster, which is why wine often exceeds windows in performance executing windows binaries (assuming you can get them to run at all :)

WINE has a FAQ on the matter - https://wiki.winehq.org/FAQ#Is_Wine_an_emulator.3F_There_seems_to_be_disagreement

Short story, it depends what you use WINE for and the perspective you're looking from. I think from a binary's POV that thinks it is calling Windows OS it is emulation.

[–] [email protected] 3 points 10 months ago (1 children)

It's getting hard to do just between AMD and Nvidia on Windows.

I'm old enough to remember the days when reviewers showed macro shots of the wires in half life 2 to test AA between different cards.

Does anyone even test that enabling "Ultra" settings results in the same configuration across vendors/generations? I'm pretty sure LTT Labs found cases where it wasn't.

[–] LinusOnLemmyWld 3 points 10 months ago (1 children)
[–] [email protected] 1 points 10 months ago

To be fair if anyone is motivated to discover flaws in testing methodology and publicly disclose them right now it's Labs.