This would presumably let x86 windows games run on ARM hardware.

This is almost certainly meant for the next Valve VR headset, but ARM has so much better power efficiency than x86 that a future ARM based Deck would be a huge improvement to battery life.

Also see this tweet:

VR games that have already secretly pushed Android ARM builds onto the Steam Store are ran via Waydroid (androidARM to LinuxARM)

VR games that do not have an ARM build on Steam (windows x86) are being translated/emulated via ProtonARM and FEX

Edit: here’s gamingonlinux coverage of this info, includes some more information

  • Lemzlez@lemmy.world
    link
    fedilink
    English
    arrow-up
    12
    arrow-down
    5
    ·
    2 days ago

    And perform terribly because it’d have to emulate x86 because there’s no native ARM games (for Windows).

    There’s no way there’ll be an ARM steam deck, unless valve wants to build an android gaming handheld for some reason.

    • chonglibloodsport@lemmy.world
      link
      fedilink
      arrow-up
      10
      arrow-down
      2
      ·
      2 days ago

      Perform terribly on modern AAA titles, sure, but that’s a tiny % of the total Steam library. A lot of people these days don’t even bother with new AAA titles, instead playing older games or indie games. I bet Valve knows this and is working on the ARM transition specifically because of this fact.

      • Lemzlez@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 day ago

        That’s fair. I do mostly play AAA games on my deck, so “yet another android gaming handheld” isn’t at all appealing to me though.

    • Vincente@lemmy.world
      link
      fedilink
      arrow-up
      6
      arrow-down
      1
      ·
      edit-2
      2 days ago

      And the second example is Rosetta 2 for gaming on ARM-based Macs. You mentioned that some emulators running x86 games (on ARM) are inefficient.

      That’s the point: emulation is not the same as translation.

      Translation is generally more efficient than emulation and can sometimes even match or exceed the performance of native execution.

      • Lemzlez@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 day ago

        Apple’s M-chips have dedicated hardware to accelerate rosetta 2 (support for x86 memory ordering), please stop using rosetta2 as a show of what x86 on ARM can do, as it is a vertically integrated piece of software that is not indicative of the current market for anyone outside of apple.

        Just take a look at windows on those new qualcomn chips - when they do the translation, the performance is underwhelming to say the least.

        Yes, it will improve, but it currently does not exist outside of Apple.

        • Vincente@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          13 hours ago

          The translation on ARM macs is actually strongly related to Valve because Rosetta 2 and the Game Porting Toolkit are based on the open-source Proton, which was developed by Valve. So, it’s not an Apple-exclusive technology; it’s closely tied to Valve. Valve could also collaborate with AMD or others to develop custom SoCs, similar to what Apple has done. I believe Valve has the ability and ambition to do the same thing, but even better than Apple. Because they have done it once with the Steam Deck.

          • Lemzlez@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            11 hours ago

            Rosetta and proton are two completely different layers.

            Game porting toolkit is indeed also based on wine, but that’s only the conversion of directX to ogpl or vulkan (using metalVK in Apple’s case)

            Rosetta is a completely separate harware accelerated (as in, the chips have dedicated hardware for this) translation layer for x86 to ARM

            Given the lengths they had to go through to get even this custom APU, I can only imaging the difficulty in procuring a first-gen ARM offering from AMD.

            I swear, this is just the “VR is really here, and it’ll replace conventional gaming!” Debate all over again. I’d be surprised if it happens in the next two years. After that? Maybe, if x86 doesn’t catch up more than it already has (which I fully expect it to do).

            • Vincente@lemmy.world
              link
              fedilink
              arrow-up
              1
              ·
              edit-2
              9 hours ago

              I never said it would happen in the next two years. I just said that it’s a possible path, and apparently, it has no chance of happening in two years. Valve’s next step in two years is apparently to update the Steam Deck 2 with AMD x86 chips. A 5- to 10-year period is what I expect.

              I won’t talk about this anymore with you. Bye.

              And hardware acceleration is not as important as you emphasize. A traditional ARM chip running native ARM and cross-platform games, and some x86/Windows/DirectX games that don’t need hardware acceleration to translate on Linux on ARM is competitive enough in the gaming market. At least it’s more ecologically rich than Android games (if you have any doubt, just look at the Nintendo Switch!), and it would function as a PC too.

              Some games don’t need hardware acceleration to be translated. Others that do need it can’t be translated, just like some games don’t support SteamOS. Overall, it doesn’t affect the Steam Deck’s success!

    • Vincente@lemmy.world
      link
      fedilink
      arrow-up
      5
      arrow-down
      1
      ·
      edit-2
      2 days ago

      Which you said is a backward compatibility issue. Some games that are developed only for x86 or the DirectX API have performance issues, but other games that support cross-platform or cross-platform APIs like Vulkan do not have this problem.

      An obvious example is the Nintendo Switch, which goes against your argument.

      Because of backward compatibility, x86’s efficiency still can’t match ARM’s. That’s why I said games run on ARM would be more efficient, lighter, and smaller (when they natively support ARM).

      If you have any doubts, just look at the Nintendo Switch.

      • DirectX is being translated to Vulkan in the background using dxvk already. And box64 exists for intercepting those translated Vulkan (and OS) calls and running them through native code instead.

        There’s a performance hit to engine code to be dealt with, but on the graphics side these tools already exist. With Qualcomm producing ARM CPUs that run x64 software as well as some mid tier x64 CPUs using emulation, and with the Steam Deck already being a low spec machine, I don’t see why running Windows games on a Qualcomm Steam deck would have to be a problem.

        • Vincente@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          13 hours ago

          That’s a backward compatibility issue, which means some games developed for x86, Windows, or DirectX just can’t be translated without glitches. This means not every game developed for x86, Windows, or DirectX can be translated well on ARM.

          I said that ‘some games that are developed only for x86 or the DirectX API have performance issues’; I didn’t say ‘every game.’ I mean that games with native support or cross-platform support are certainly better than those developed only for DirectX, Windows, or x86.

          For example, many games developed exclusively for Windows/DX can’t be played on SteamOS. So how can you be certain that games developed for x86, Windows, or by DirectX would be totally well supported on ARM?

          And you mentioned Qualcomm. Fine, look at the Qualcomm X Elite SoC computers. Do they run x86, Windows, or DirectX software or games steadily, efficiently, and well? Do they have many glitches when running Windows and x86 software?

          • Skull giver@popplesburger.hilciferous.nl
            link
            fedilink
            arrow-up
            1
            ·
            edit-2
            1 day ago

            Most games target DirectX, though, yet my Steam Deck is doing just fine. Targeting DirectX doesn’t impede running the games on Linux or on another architecture anymore thanks to decades of work by the Linux community.

            I’m sure there are edge cases where dxvk support isn’t working well yet, but the same is true for Vulkan games. One of the reason Windows drivers for GPUs are gigabytes in size is because they come packed with shades for games you probably don’t even own, because the shades game devs write aren’t all that good and companies like Nvidia rewrite them to perform well on their hardware.

            In my experience, dxvk is less glitchy than running games that target Vulkan using Wine or Proton. Some games don’t even work in Proton if you try to use Vulkan. I’m 100% sure that’s a Linux driver issue.

            The nice thing about using dxvk is that the output is platform independent, as long as there are Vulkan drivers. If a game runs glitchless on x64, it’ll run glitchless on ARM. Qualcomm’s desktop Linux support doesn’t seem very present (or no Linux users are buying them yet) so I can’t find any reviews of box64 on these new chips, but on Windows these chips run games like Tomb Raider and the latest Total War just fine at 80fps at 1080p (using the 35W model).

            The biggest challenge isn’t emulating CPU architectures, that’s a solved problem; it’s getting Windows games to work well on Linux, and for Qualcomm to release competent native drivers for their GPU. Especially the latter is the biggest problem at the moment, with Linux support not being finished yet and their Windows drivers sucking like Qualcomm software on Windows often does.

            My Android phone, a five year old mobile Qualcomm CPU with about 2GB of available RAM, runs DirectX games targeting x86 Windows just as well as any comparably performing Intel chip does. Layering box64+Wine+dxvk works perfectly fine.