Announcement

Collapse
No announcement yet.

WineConf 2022 Talked Up Vulkan, PE Conversion Progress, Wine 8.0 Early Next Year

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • WineConf 2022 Talked Up Vulkan, PE Conversion Progress, Wine 8.0 Early Next Year

    Phoronix: WineConf 2022 Talked Up Vulkan, PE Conversion Progress, Wine 8.0 Early Next Year

    Taking place this week alongside the X.Org Developers Conference (XDC 2022) was WineConf as the annual gathering of Wine developers. CodeWeavers organized the co-hosted events in Minneapolis and during WineConf were two days of interesting talks for enjoying Windows games/applications on Linux and macOS...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    Wasn't there some talk a while back about effort getting USB peripheral drivers working under wine? I could swear that's what it was... If so, I wonder what happened to that..

    Comment


    • #3
      Is it true that the whole PE conversion badly affects Wine's performance? Or maybe I'm confusing with this claim about the new WOW64 method to run 32 bit apps (which also idk if it's true).

      Comment


      • #4
        Originally posted by doomie View Post
        Wasn't there some talk a while back about effort getting USB peripheral drivers working under wine? I could swear that's what it was... If so, I wonder what happened to that..
        Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite


        You are most likely think about the WineUSB stuff. This is not generic drivers. Applications using windows winusb.sys interface being able to work with wine if you have all the permissions set the right way.

        Comment


        • #5
          What about Wayland ?

          Comment


          • #6
            Originally posted by user1 View Post
            Is it true that the whole PE conversion badly affects Wine's performance? Or maybe I'm confusing with this claim about the new WOW64 method to run 32 bit apps (which also idk if it's true).
            That's WOW64 method you think of. PE conversion is a hard requirement for it, but it's not the same thing.

            PE conversion by itself shouldn't impact performance, just improve compatibility. At least in theory. The problem is that, prior to PE conversion, Wine was using glibc for example, the unix one. Now it is using the one included in Wine's own msvcrt/ucrtbase. Needless to say, Wine's versions of most functions tend to be far less optimized. Various people tried to send optimized versions but ofc it's very hard to get them in past the maintainers unless they have some huge perf gain, sadly. Kinda dumb but it is what it is.

            In my opinion if any such function performs worse than glibc and any patch demonstrates any speedup above the current version, it should be instantly accepted as long as it's correct, because this is a fucking regression compared to when it used libc. I don't care if they (the maintainers) think it's not "good enough", it's a fact, and facts are above opinions.
            Last edited by Weasel; 08 October 2022, 12:41 PM.

            Comment


            • #7
              Originally posted by MastaG View Post
              What about Wayland ?
              Apparently in the same distant future as HDR linux support

              Comment


              • #8
                Originally posted by Weasel View Post
                That's WOW64 method you think of. PE conversion is a hard requirement for it, but it's not the same thing.

                PE conversion by itself shouldn't impact performance, just improve compatibility. At least in theory. The problem is that, prior to PE conversion, Wine was using glibc for example, the unix one. Now it is using the one included in Wine's own msvcrt/ucrtbase. Needless to say, Wine's versions of most functions tend to be far less optimized. Various people tried to send optimized versions but ofc it's very hard to get them in past the maintainers unless they have some huge perf gain, sadly. Kinda dumb but it is what it is.

                In my opinion if any such function performs worse than glibc and any patch demonstrates any speedup above the current version, it should be instantly accepted as long as it's correct, because this is a fucking regression compared to when it used libc. I don't care if they (the maintainers) think it's not "good enough", it's a fact, and facts are above opinions.
                So from what you describe, I understand that 64 bit apps also suffer from the performance hit because the PE converted modules don't use the better optimized glibc anymore? (I'm not super familiar with Wine's architecture).
                Also, are there any numbers/benchmarks that show how much percent of performance is lost?

                Comment


                • #9
                  Originally posted by MastaG View Post
                  What about Wayland ?
                  And what about Pipewire driver?

                  Comment


                  • #10
                    Originally posted by user1 View Post
                    So from what you describe, I understand that 64 bit apps also suffer from the performance hit because the PE converted modules don't use the better optimized glibc anymore? (I'm not super familiar with Wine's architecture).
                    Also, are there any numbers/benchmarks that show how much percent of performance is lost?
                    Yeah of course, PE is basically the .dll format used by Windows. On Windows, all such modules are .dll obviously, so this conversion actually keeps compatibility with Windows for the most part. Important for DRM checks, anti cheats and other low level stuff.

                    What I described is just a side effect. I'm not saying they have to go back to using fake dll with unix modules. But rather that they really ought to take optimizations more seriously, for libc stuff, so their implementation is on par with glibc.

                    Comment

                    Working...
                    X