• INeedMana@piefed.zip
    link
    fedilink
    English
    arrow-up
    184
    ·
    17 days ago

    What is often overlooked

    Those benchmarks compare Wine NTSYNC against upstream vanilla Wine, which means there’s no fsync or esync either. Gamers who use fsync are not going to see such a leap in performance in most games.

    Ntsync is great and there will be performance improvement. But not exactly massive

    • TheTechnician27@lemmy.world
      link
      fedilink
      English
      arrow-up
      25
      ·
      17 days ago

      Gamers who use fsync are not going to see such a leap in performance in most games.

      I don’t think that’s overlooked at all. 99.9% of people using WINE/Proton aren’t going to have any idea what fsync is, and almost nobody not using proton-cachyos is going to use it. fsync, itself a workaround, is niche within what’s already a niche.

      • SmoochyPit@lemmy.ca
        link
        fedilink
        English
        arrow-up
        27
        ·
        17 days ago

        From what I found online, Steam enables esync by default, and fsync if your kernel supports it.

        Lutris has both options nowadays in the runner settings. Idk if they’re both enabled by default, but in my case they’re enabled. ymmv there.

        source

        • grue@lemmy.world
          link
          fedilink
          English
          arrow-up
          6
          ·
          17 days ago

          What are the kernel requirements? Is it something any random Debian user is likely to have, or do you need to be compiling it yourself?

          • SmoochyPit@lemmy.ca
            link
            fedilink
            English
            arrow-up
            10
            ·
            17 days ago

            From the article:

            Futex2, often referred to interchangeably with fsync, did make it to Linux kernel 5.16 as futex_waitv, but the original implementation of fsync isn’t that. Fsync used futex_wait_multiple, and Futex2 used futex_waitv. Applications such as Lutris still refer to it as Fsync, though. It’s still kind of fsync, but it’s not the original fsync.

            So since Jan 2022, it’s been in the stable Linux kernel. For Debian and its derivatives, it would be included beginning with Bookworm.

            • grue@lemmy.world
              link
              fedilink
              English
              arrow-up
              14
              ·
              17 days ago

              So basically, both esync and fsync are enabled by default for almost everybody.

              • SmoochyPit@lemmy.ca
                link
                fedilink
                English
                arrow-up
                7
                ·
                17 days ago

                Assuming that most non-technical users (who wouldn’t research and enable it) are probably using Wine/Proton through Steam: yeah.

        • kieron115@startrek.website
          link
          fedilink
          English
          arrow-up
          2
          ·
          15 days ago

          In short, LXDE was the measured as the fastest desktop environment for gaming, while XFCE with compositor disabled came in second fastest out of the ones tested. If you need the maximum performance XFCE may be a good compromise between looks vs performance. You can use the “Disable desktop effects” option in Lutris which may reduce the overhead of the desktop environment further.

          any idea how this would compare to starting steam directly from a display manager using gamescope as the compositor?

          • SmoochyPit@lemmy.ca
            link
            fedilink
            English
            arrow-up
            2
            ·
            15 days ago

            I’m imagine gamescope is the best-case, since there’s no other apps or visual effects.

      • Christian@lemmy.ml
        link
        fedilink
        English
        arrow-up
        7
        ·
        17 days ago

        99.9% of people using WINE/Proton aren’t going to have any idea what fsync is

        Speaking, although I’ve heard the term thrown around a lot. Can I get a layman’s overview?

          • Christian@lemmy.ml
            link
            fedilink
            English
            arrow-up
            18
            ·
            17 days ago

            You’re right, it is.

            You can try all you want, but you will never get me to read the articles before commenting.

      • INeedMana@piefed.zip
        link
        fedilink
        English
        arrow-up
        5
        ·
        17 days ago

        Fsync maybe not but AFAIK esync is widely used. On some protondb pages there’s a hint to disable esync, not the other way round. And while esync is not as performant as fsync, it is still much better than vanilla

        • Quetzalcutlass@lemmy.world
          link
          fedilink
          English
          arrow-up
          12
          ·
          17 days ago

          It’s worth noting that the new sync implementation shouldn’t cause any of the compatibility problems esync and fsync ran into, so it’s a worthwhile upgrade from a stability viewpoint even if a user won’t see huge performance gains.

      • kieron115@startrek.website
        link
        fedilink
        English
        arrow-up
        5
        ·
        17 days ago

        i use ntsync whenever i can, but i’ve only had linux (cachyos) on my gaming rig since like august. that said, i believe one of their recent updates made ntsync the default for proton-cachyos

    • Fubarberry@sopuli.xyz
      link
      fedilink
      English
      arrow-up
      9
      ·
      17 days ago

      It should still fix minor stuttering that some gets get on Linux, which will be pretty huge.

    • Tywèle@piefed.social
      link
      fedilink
      English
      arrow-up
      7
      ·
      16 days ago

      The numbers are wild. In developer benchmarks, Dirt 3 went from 110.6 FPS to 860.7 FPS, which is an impressive 678% improvement. Resident Evil 2 jumped from 26 FPS to 77 FPS. Call of Juarez went from 99.8 FPS to 224.1 FPS. Tiny Tina’s Wonderlands saw gains from 130 FPS to 360 FPS. As well, Call of Duty: Black Ops I is now actually playable on Linux, too.

      These don’t sound massive to you?

    • Lojcs@piefed.social
      link
      fedilink
      English
      arrow-up
      2
      ·
      17 days ago

      I remember hearing that Ntsync isn’t even faster than fsync in general use, just in some rare corner cases

      • Kogasa@programming.dev
        link
        fedilink
        English
        arrow-up
        5
        ·
        17 days ago

        This is true and expected, the point of NTSYNC was to be a more faithful emulation of Windows synchronization primitives, so increased compatibility and correctness. If it’s ever faster than esync or fsync it’s just a bonus. It’s on par generally, though.

          • Kogasa@programming.dev
            link
            fedilink
            English
            arrow-up
            4
            ·
            16 days ago

            Okay. Parts of WINE emulate parts of Windows in order to function. The NTSYNC driver emulates NT synchronization primitives.

            • zewm@lemmy.world
              link
              fedilink
              English
              arrow-up
              1
              ·
              16 days ago

              People on Lemmy are fucking dumb, wow. The word WINE literally stands for “Wine Is Not an Emulator”. It’s a translation layer.

              • Kogasa@programming.dev
                link
                fedilink
                English
                arrow-up
                9
                ·
                16 days ago

                I’m aware. You seem to be equivocating on the word “emulate.” Nobody called WINE an emulator. The design and behavior of NTSYNC is meant to mimic that of NT synchronization primitives.

      • HouseWolf@pawb.social
        link
        fedilink
        English
        arrow-up
        3
        ·
        16 days ago

        It fixed the lag spikes I experienced playing some of the older Call of Duty titles so it’s overall been a huge upgrade for me.

  • tal@lemmy.today
    link
    fedilink
    English
    arrow-up
    122
    ·
    17 days ago

    If NTSYNC is the headline feature, the completion of Wine’s WoW64 architecture is the change that will quietly improve everyone’s life going forward. On Windows, WoW64 (Windows 32-bit on Windows 64-bit) is the subsystem that lets 32-bit applications run on 64-bit systems. Wine has been working toward its own implementation of this for years, and Wine 11 marks the point where it’s officially done.

    What this means in practice is that you no longer need 32-bit system libraries installed on your 64-bit Linux system to run 32-bit Windows applications. Wine handles the translation internally, using a single unified binary that automatically detects whether it’s dealing with a 32-bit or 64-bit executable. The old days of installing multilib packages, configuring ia32-libs, or fighting with 32-bit dependencies on your 64-bit distro thankfully over.

    This might sound like a small quality-of-life improvement, but it’s a massive piece of engineering work. The WoW64 mode now handles OpenGL memory mappings, SCSI pass-through, and even 16-bit application support. Yes, 16-bit! If you’ve got ancient Windows software from the '90s that you need to run for whatever reason, Wine 11 has you covered.

    For gaming specifically, this matters because a surprising number of games, especially older ones, are 32-bit executables. Previously, getting these to work often meant wrestling with your distro’s multilib setup, which varied in quality and ease depending on whether you were on Ubuntu, Arch, Fedora, or something else entirely. Now, Wine just handles it for you.

    Oh, thank heavens. I remember advising some users here to look for specifically missing 32-bit host Linux library support; I’d run into that problem before.

    • auntieclokwise@lemmy.world
      link
      fedilink
      English
      arrow-up
      23
      ·
      17 days ago

      One thing kind of interesting is that not even the Windows WoW64 allows running 16 bit applications. Officially, if you want to run 16 bit applications on 64 bit Windows, you have to get a VM or an emulator.

      • panicnow@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        16 days ago

        A decade ago, I remember explaining to management why we still had Windows Server 2008 R2 running terminal services with Citrix. Ancient 16-bit applications that needed a 16-bit subsystem!

    • CeeBee_Eh@lemmy.world
      link
      fedilink
      English
      arrow-up
      9
      ·
      17 days ago

      I think you still need to worry about multilib configs if the game you’re trying to play is Linux native. But I guess those games usually have a Windows version anyways and you could just use Wine/Proton for that.

      • brucethemoose@lemmy.world
        link
        fedilink
        English
        arrow-up
        4
        ·
        16 days ago

        It may be heresy, but at that point, just run the Windows version over the linux one, yes.

        The amount of games that:

        • Have linux builds,

        • that run noticably better than the Windows executable through Wine/Proton

        • yet require 32-bit linux libs,

        • in 2026?

        Must be zero, or close to it.

        Besides, I love the meme that “Wine is a better gaming platform than native linux, or native Windows.” There’s something so satsifying about robbing Microsoft’s own API with such wild success.

        • CeeBee_Eh@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          16 days ago

          I don’t think it’s heresy, but I do think there’s value in devs shipping native Linux builds. It’s a Mindshare thing. If devs never target Linux they won’t build with Linux in mind.

          But as a user, it’s fine to use whichever version gives the best performance.

          • brucethemoose@lemmy.world
            link
            fedilink
            English
            arrow-up
            3
            ·
            16 days ago

            If devs never target Linux they won’t build with Linux in mind.

            Won’t they?

            I posit this:

            • Windows gaming will die. Slowly.

            • Devs will target Proton more and more explicitly.

            • …Until development is basically exclusively targing Wine/Proton, on Linux.

            It’s easy to laugh at that as a meme, but does Windows seem sustainable now? Is there any sane “single target” for game devs other than Proton? Is it not the path of least resistance, by an order of magnitude? Hence I think that’s legitimately what will happen.

            • CeeBee_Eh@lemmy.world
              link
              fedilink
              English
              arrow-up
              3
              ·
              16 days ago

              It’s easy to laugh at that as a meme

              No, you definitely have a point. An increasingly valid one, I might add.

              And I do wonder what the “point” of Wine will be overall if we ever get to the point where the majority of users are on Linux.

              • brucethemoose@lemmy.world
                link
                fedilink
                English
                arrow-up
                2
                ·
                16 days ago

                And I do wonder what the “point” of Wine will be overall if we ever get to the point where the majority of users are on Linux.

                Nothing! If Windows parity isn’t a concern, they don’t have to develop anything. They can leave Wine how it is, and everything just works! In fact, keeping it as a stable API would be less of a headache for apps that target it.

                WINE becomes a “universally compatible linux API” that happens to be backwards-compatible with Windows executables.

                What’s more, they could add whatever features and fixes they want, unbound by Microsoft. Game studios could even PR the project, I suppose.


                I’m not sure that would ever happen, though. Business users will be stuck with Windows forever, hence parity with Windows desktop apps will remain a goal.

    • BoxOfFeet@lemmy.world
      link
      fedilink
      English
      arrow-up
      8
      ·
      17 days ago

      This is super exciting. I never got mine working right, I gave up and installed 86Box. It was easier to do a complete installation of Windows 98 than get some of my old games running in Wine.

    • lad@programming.dev
      link
      fedilink
      English
      arrow-up
      7
      ·
      16 days ago

      Feels like we’re getting closer to having better support of older win apps in Linux than in Windows

  • Elting@piefed.social
    link
    fedilink
    English
    arrow-up
    88
    ·
    17 days ago

    I just installed wine and launched Noita (a very cpu intensive game) with it, and the stuttering I’ve been experiencing since switching to linux has vanished. The game has never run smoother. Cant wait for proton to get up to date.

  • youmaynotknow@lemmy.zip
    link
    fedilink
    English
    arrow-up
    64
    ·
    16 days ago

    Every time I see something that points at Microsoft losing market share, I get really excited. This is great.

  • JATth@lemmy.world
    link
    fedilink
    English
    arrow-up
    39
    ·
    16 days ago

    Completely missing from the article is the syscall user dispatch being utilized finally: hardcoded NT syscalls can be handled instead of crashing. So, a program which didn’t work previously or crashed often may very well now work with Wine 11.5

  • thingsiplay@lemmy.ml
    link
    fedilink
    English
    arrow-up
    30
    ·
    16 days ago

    So this is about NTSYNC (mostly). Based on the post title, I was wondering what changed so drastically. This is a good read to give me some understanding about the NTSYNC topic. Still reading through. What a huge difference to those random blog posts written by an Ai model.

  • Paranoid Factoid@lemmy.world
    link
    fedilink
    English
    arrow-up
    20
    ·
    16 days ago

    I’m less interested in games and more interested in creative apps. If Affinity on Linux is actually useful now, I’d make the transition. Gimp still lacks layer masks for adjustments. I want better tools.

    • dual_sport_dork 🐧🗡️@lemmy.world
      link
      fedilink
      English
      arrow-up
      7
      ·
      16 days ago

      Agreed. I need Corel Suite to work in order to do my job. Once this happens I can move to Linux full time.

      No, Inkscape and GIMP are not “good enough,” before someone pipes up about it.

  • JTskulk@lemmy.world
    link
    fedilink
    English
    arrow-up
    14
    ·
    17 days ago

    Thank you for this post! I got curious as to what I have, so I ran zcat /proc/config.gz | grep -iE 'ntsync|esync|fsync' and saw that I only have ntsync which is a module and is unloaded! Now I have it loaded and set to autoload on boot so I’m ready for better performance. This is with the Arch Zen kernel. Thanks!

  • rumba@lemmy.zip
    link
    fedilink
    English
    arrow-up
    10
    ·
    16 days ago

    ohhh shit, stop, I can only get so hard…

    How awesome would it be for wine to outperform windows :)

      • rumba@lemmy.zip
        link
        fedilink
        English
        arrow-up
        6
        ·
        16 days ago

        In specific it can, especially in disk access. In general, games are notably, but not earthshatteringly, slower.

  • popcar2@piefed.ca
    link
    fedilink
    English
    arrow-up
    9
    ·
    17 days ago

    I’ve been using it starting from today and while there doesn’t seem to be much difference in the average FPS, the frame pacing seems way better. Less stuttering overall, but I wouldn’t say massive speed gains.

  • atopi@piefed.blahaj.zone
    link
    fedilink
    English
    arrow-up
    8
    ·
    16 days ago

    i missed the e in wine and reread the sentence so many times and was confused what windows subsystem for linux had to do with running windows games

    • CheeseNoodle@lemmy.world
      link
      fedilink
      English
      arrow-up
      7
      ·
      16 days ago

      I read win at first as well but then when the sentence started saying positive things I knew I had misread it.