Skip to content
  • Hjem
  • Seneste
  • Etiketter
  • Populære
  • Verden
  • Bruger
  • Grupper
Temaer
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Kollaps
FARVEL BIG TECH
  1. Forside
  2. Ikke-kategoriseret
  3. Rust wgpu now has a

Rust wgpu now has a

Planlagt Fastgjort Låst Flyttet Ikke-kategoriseret
316 Indlæg 74 Posters 0 Visninger
  • Ældste til nyeste
  • Nyeste til ældste
  • Most Votes
Svar
  • Svar som emne
Login for at svare
Denne tråd er blevet slettet. Kun brugere med emne behandlings privilegier kan se den.
  • mcc@mastodon.socialM mcc@mastodon.social

    Okay so now what I'm looking at is Redox. Redox is the OS project I find that's interested in being written by humans instead of people who have decided to replace parts of their brain with a corporation. I can live with this. I've got an update on my Redox thread I haven't posted yet, but for these purposes what's important is Redox doesn't have, and considers a far-future goal, video acceleration. That makes sense. But it means there's a gap in the staircase I wish to climb.

    mcc@mastodon.socialM This user is from outside of this forum
    mcc@mastodon.socialM This user is from outside of this forum
    mcc@mastodon.social
    wrote sidst redigeret af
    #17

    I convinced myself, I really did, I could make a simple vulkan-compliant GPU. Could I make a vulkan compliant Redox GPU *driver* for the AMD GPU I own already? Actually, I seriously doubt that. That sounds harder actually. That's a moving target.

    Could I make a Redox driver for an open source GPU someone *else* made? Okay, yes, I believe that I think.

    Could I make *both* the open source GPU *and* the driver for it? No. I mean, maybe. But no, I don't believe that. Not both. That's too much.

    mcc@mastodon.socialM brouhaha@mastodon.socialB tthbaltazar@chaos.socialT 3 Replies Last reply
    0
    • mcc@mastodon.socialM mcc@mastodon.social

      Okay so now what I'm looking at is Redox. Redox is the OS project I find that's interested in being written by humans instead of people who have decided to replace parts of their brain with a corporation. I can live with this. I've got an update on my Redox thread I haven't posted yet, but for these purposes what's important is Redox doesn't have, and considers a far-future goal, video acceleration. That makes sense. But it means there's a gap in the staircase I wish to climb.

      khleedril@cyberplace.socialK This user is from outside of this forum
      khleedril@cyberplace.socialK This user is from outside of this forum
      khleedril@cyberplace.social
      wrote sidst redigeret af
      #18

      @mcc Redox needs to be broken up a bit so we can do some mix-and-matching.

      mcc@mastodon.socialM 1 Reply Last reply
      0
      • mcc@mastodon.socialM mcc@mastodon.social

        I convinced myself, I really did, I could make a simple vulkan-compliant GPU. Could I make a vulkan compliant Redox GPU *driver* for the AMD GPU I own already? Actually, I seriously doubt that. That sounds harder actually. That's a moving target.

        Could I make a Redox driver for an open source GPU someone *else* made? Okay, yes, I believe that I think.

        Could I make *both* the open source GPU *and* the driver for it? No. I mean, maybe. But no, I don't believe that. Not both. That's too much.

        mcc@mastodon.socialM This user is from outside of this forum
        mcc@mastodon.socialM This user is from outside of this forum
        mcc@mastodon.social
        wrote sidst redigeret af
        #19

        Here's where we get to the funny part:

        When I was looking at making an OSS GPU, I had this idea. Instead of supporting Vulkan, which is really a quite large API surface, I imagined a GPU that natively speaks WebGPU. WebGPU is designed as a simplified API covering the shared subset between Metal, DirectX, and Vulkan. Imagine instead of Vulkan I just make a hacked wgpu that connects directly to my open-source toy "RISCV GPU". My estimation as a moderate domain expert is that saves a *lot* of time

        mcc@mastodon.socialM sabrina@fedi01.unicornsparkle.clubS 2 Replies Last reply
        0
        • mcc@mastodon.socialM mcc@mastodon.social

          Rust wgpu now has a .agents/skills, a .claude/skills, an AGENTS.md, and a CLAUDE.md.

          Increasingly wondering if my goal of living in a way that I never benefit from the actions of generative AI users and generative AI users never benefit from the actions of me is going to inherently mean never using hardware-accelerated video on a computer again.

          erincandescent@akko.erincandescent.netE This user is from outside of this forum
          erincandescent@akko.erincandescent.netE This user is from outside of this forum
          erincandescent@akko.erincandescent.net
          wrote sidst redigeret af
          #20
          @mcc (probably this requires never upgrading to any piece of hardware released past ~2024 or so)
          mcc@mastodon.socialM 1 Reply Last reply
          0
          • mcc@mastodon.socialM mcc@mastodon.social

            I convinced myself, I really did, I could make a simple vulkan-compliant GPU. Could I make a vulkan compliant Redox GPU *driver* for the AMD GPU I own already? Actually, I seriously doubt that. That sounds harder actually. That's a moving target.

            Could I make a Redox driver for an open source GPU someone *else* made? Okay, yes, I believe that I think.

            Could I make *both* the open source GPU *and* the driver for it? No. I mean, maybe. But no, I don't believe that. Not both. That's too much.

            brouhaha@mastodon.socialB This user is from outside of this forum
            brouhaha@mastodon.socialB This user is from outside of this forum
            brouhaha@mastodon.social
            wrote sidst redigeret af
            #21

            @mcc
            Well, maybe not simultaneously, but I think you could do both if you wanted to.

            mcc@mastodon.socialM 1 Reply Last reply
            0
            • mcc@mastodon.socialM mcc@mastodon.social

              Here's where we get to the funny part:

              When I was looking at making an OSS GPU, I had this idea. Instead of supporting Vulkan, which is really a quite large API surface, I imagined a GPU that natively speaks WebGPU. WebGPU is designed as a simplified API covering the shared subset between Metal, DirectX, and Vulkan. Imagine instead of Vulkan I just make a hacked wgpu that connects directly to my open-source toy "RISCV GPU". My estimation as a moderate domain expert is that saves a *lot* of time

              mcc@mastodon.socialM This user is from outside of this forum
              mcc@mastodon.socialM This user is from outside of this forum
              mcc@mastodon.social
              wrote sidst redigeret af
              #22

              Meanwhile, look at the other staircase I want to climb.

              I *don't* have an open-hardware laptop. I have a Lenovo with an AMD chipset. I want a slopless operating system. Redox the OS is slopless, but much of the GUI running atop it is just ports of Linux software, and much of that is slop. The project I've been thinking about *this* year is hacking Redox to boot direct into Servo (the web browser). As I explore this idea, suddenly my "wgpu direct to hardware" idea becomes relevant again:

              mcc@mastodon.socialM lispi314@udongein.xyzL 2 Replies Last reply
              0
              • mcc@mastodon.socialM mcc@mastodon.social

                I convinced myself, I really did, I could make a simple vulkan-compliant GPU. Could I make a vulkan compliant Redox GPU *driver* for the AMD GPU I own already? Actually, I seriously doubt that. That sounds harder actually. That's a moving target.

                Could I make a Redox driver for an open source GPU someone *else* made? Okay, yes, I believe that I think.

                Could I make *both* the open source GPU *and* the driver for it? No. I mean, maybe. But no, I don't believe that. Not both. That's too much.

                tthbaltazar@chaos.socialT This user is from outside of this forum
                tthbaltazar@chaos.socialT This user is from outside of this forum
                tthbaltazar@chaos.social
                wrote sidst redigeret af
                #23

                @mcc
                amd and intel provide gpu docs

                so yes, you totally can

                mcc@mastodon.socialM 1 Reply Last reply
                0
                • tthbaltazar@chaos.socialT tthbaltazar@chaos.social

                  @mcc
                  amd and intel provide gpu docs

                  so yes, you totally can

                  mcc@mastodon.socialM This user is from outside of this forum
                  mcc@mastodon.socialM This user is from outside of this forum
                  mcc@mastodon.social
                  wrote sidst redigeret af
                  #24

                  @tthbaltazar Pulling this off for amd is *more* likely than nvidia. But amd is *large*. AMD is a great many GPUs. Perhaps I can make a driver that works on *my* AMD in *my* laptop. Can I make one that works with anyone else's? What would testing look like? How would I know if the thing I made *worked*? How would I maintain it as AMD continues to release new GPUs?

                  1 Reply Last reply
                  0
                  • mcc@mastodon.socialM mcc@mastodon.social

                    Meanwhile, look at the other staircase I want to climb.

                    I *don't* have an open-hardware laptop. I have a Lenovo with an AMD chipset. I want a slopless operating system. Redox the OS is slopless, but much of the GUI running atop it is just ports of Linux software, and much of that is slop. The project I've been thinking about *this* year is hacking Redox to boot direct into Servo (the web browser). As I explore this idea, suddenly my "wgpu direct to hardware" idea becomes relevant again:

                    mcc@mastodon.socialM This user is from outside of this forum
                    mcc@mastodon.socialM This user is from outside of this forum
                    mcc@mastodon.social
                    wrote sidst redigeret af
                    #25

                    Servo rests atop wgpu. Therefore, if my OS's entire GUI layer is servo, and I believe that implementing webgpu is easier than implementing vulkan, I can increase my chances of writing a working video-acceleration driver if I simplify it so *the driver supplies wgpu*, instead of trying to support the full scope of DRI/DRM or OpenGL/Vulkan or whatever this entails.

                    Two things I want, in both cases wgpu provides a critical, project-saving step.

                    And oh, I think wgpu might be slop now. Never mind!

                    mcc@mastodon.socialM crzwdjk@mastodon.socialC dotstdy@mastodon.socialD jdm_@mastodon.socialJ 4 Replies Last reply
                    0
                    • mcc@mastodon.socialM mcc@mastodon.social

                      What I mean is, my daydream GPU was going to be designed to be good for the kinds of 2D acceleration you need to like, run a web browser, scroll a window, move a window around. Want to do anything 3D? It's slow or it kicks you back out to MESA software rendering. I just wanted a computer I can use in a day to day way that felt like it was mine and I owned it.

                      There are a few rudimentary open source GPUs, but none with this focus, and critically, *none I know that support Vulkan*.

                      hyc@mastodon.socialH This user is from outside of this forum
                      hyc@mastodon.socialH This user is from outside of this forum
                      hyc@mastodon.social
                      wrote sidst redigeret af
                      #26

                      @mcc modern GPUs have no dedicated 2D acceleration hardware, it's all done in 3D shaders.

                      I'd think it's relatively easy to do dedicated 2D acceleration in an FPGA these days. Aside from a Blitter what other functional units do you need to implement? It would be enough to run X11 without more recent extensions.

                      mcc@mastodon.socialM 1 Reply Last reply
                      0
                      • hyc@mastodon.socialH hyc@mastodon.social

                        @mcc modern GPUs have no dedicated 2D acceleration hardware, it's all done in 3D shaders.

                        I'd think it's relatively easy to do dedicated 2D acceleration in an FPGA these days. Aside from a Blitter what other functional units do you need to implement? It would be enough to run X11 without more recent extensions.

                        mcc@mastodon.socialM This user is from outside of this forum
                        mcc@mastodon.socialM This user is from outside of this forum
                        mcc@mastodon.social
                        wrote sidst redigeret af
                        #27

                        @hyc Your first paragraph answers your second. It's not enough to make fast 2D blitting/compositing/blending. You have to do it in a way that can talk to the 3D APIs modern compositors and userspace software speaks.

                        hyc@mastodon.socialH 1 Reply Last reply
                        0
                        • mcc@mastodon.socialM mcc@mastodon.social

                          Here's where we get to the funny part:

                          When I was looking at making an OSS GPU, I had this idea. Instead of supporting Vulkan, which is really a quite large API surface, I imagined a GPU that natively speaks WebGPU. WebGPU is designed as a simplified API covering the shared subset between Metal, DirectX, and Vulkan. Imagine instead of Vulkan I just make a hacked wgpu that connects directly to my open-source toy "RISCV GPU". My estimation as a moderate domain expert is that saves a *lot* of time

                          sabrina@fedi01.unicornsparkle.clubS This user is from outside of this forum
                          sabrina@fedi01.unicornsparkle.clubS This user is from outside of this forum
                          sabrina@fedi01.unicornsparkle.club
                          wrote sidst redigeret af
                          #28

                          @mcc What's the smallest API and implementation necessary to accelerate a GUI so that it feels good? What's the minimum amount of hardware to support that acceleration?

                          Like, could you do 10% of WebGPU on top of CPU SIMD (or whatever) extensions to make the GUI not painful? This is well below the level I have ever worked at, so I won't be surprised if the answer is "no".

                          mcc@mastodon.socialM 1 Reply Last reply
                          0
                          • mcc@mastodon.socialM mcc@mastodon.social

                            Servo rests atop wgpu. Therefore, if my OS's entire GUI layer is servo, and I believe that implementing webgpu is easier than implementing vulkan, I can increase my chances of writing a working video-acceleration driver if I simplify it so *the driver supplies wgpu*, instead of trying to support the full scope of DRI/DRM or OpenGL/Vulkan or whatever this entails.

                            Two things I want, in both cases wgpu provides a critical, project-saving step.

                            And oh, I think wgpu might be slop now. Never mind!

                            mcc@mastodon.socialM This user is from outside of this forum
                            mcc@mastodon.socialM This user is from outside of this forum
                            mcc@mastodon.social
                            wrote sidst redigeret af
                            #29

                            I am not the only person who wants what I want: Software by humans for humans, the ability to "use a computer" without participating in this horrible thing that AI companies are trying to build out of what used to be society. Everybody's grabbed the task closest to them. I know of a slopfree book ereader. I know of a slopfree password manager. We're all dependent on stuff further down the stack, and the stack became tall at some point, and only a few items in the stack have a slopfree principle.

                            mcc@mastodon.socialM sapphire@tech.lgbtS fishidwardrobe@mastodon.me.ukF 3 Replies Last reply
                            1
                            0
                            • mcc@mastodon.socialM mcc@mastodon.social

                              I am not the only person who wants what I want: Software by humans for humans, the ability to "use a computer" without participating in this horrible thing that AI companies are trying to build out of what used to be society. Everybody's grabbed the task closest to them. I know of a slopfree book ereader. I know of a slopfree password manager. We're all dependent on stuff further down the stack, and the stack became tall at some point, and only a few items in the stack have a slopfree principle.

                              mcc@mastodon.socialM This user is from outside of this forum
                              mcc@mastodon.socialM This user is from outside of this forum
                              mcc@mastodon.social
                              wrote sidst redigeret af
                              #30

                              This thread is probably meandering and maybe solipsistic. My point is this: My weird background means I can look at this staircase full of missing stairs, identify one step, and go, "I can fix that". But I don't know if there's enough of me to fix multiple steps. I haven't decided what to do from here. Pick a step and fix it anyway? Pick a "fun" project, like the GPU [which face it, even if I finished it chances are not high more than 3 people would ever use it]? Give up and learn electric bass?

                              mcc@mastodon.socialM datarama@hachyderm.ioD faraiwe@mstdn.socialF eniko@mastodon.gamedev.placeE griotspeak@soc.mod-12.comG 8 Replies Last reply
                              0
                              • mcc@mastodon.socialM mcc@mastodon.social

                                This thread is probably meandering and maybe solipsistic. My point is this: My weird background means I can look at this staircase full of missing stairs, identify one step, and go, "I can fix that". But I don't know if there's enough of me to fix multiple steps. I haven't decided what to do from here. Pick a step and fix it anyway? Pick a "fun" project, like the GPU [which face it, even if I finished it chances are not high more than 3 people would ever use it]? Give up and learn electric bass?

                                mcc@mastodon.socialM This user is from outside of this forum
                                mcc@mastodon.socialM This user is from outside of this forum
                                mcc@mastodon.social
                                wrote sidst redigeret af
                                #31

                                Anyway, I spent the last week writing documentation for Redox. The Redox project seems to be happy for my documentation patches. One thimble full of water, out of the sinking boat.

                                F ciatmusings@raru.reC spawnie@mastodon.socialS xdydx@mastodon.socialX cliftonr@wandering.shopC 7 Replies Last reply
                                0
                                • mcc@mastodon.socialM mcc@mastodon.social

                                  People who are making FPGA GPUs are usually hardware folks and usually interested in like, running a game or something. I'm not a hardware folk. But I'm familiar enough with 3D APIs and OS midlayers I could, with a lot of work, make a GPU that doesn't just run demos but connects all the way up to Linux or some other desktop OS. And then we've finally got the open source laptop entire stack bottom to top, motherboard cpu gpu libreboot linux.

                                  Except then Linux went finally, undeniably corporate.

                                  mntmn@mastodon.socialM This user is from outside of this forum
                                  mntmn@mastodon.socialM This user is from outside of this forum
                                  mntmn@mastodon.social
                                  wrote sidst redigeret af
                                  #32

                                  @mcc for completeness, i already had a PoC of this btw that i'm planning to revive https://mntre.com/media/reform_md/2022-09-29-rkx7-showcase.html

                                  mcc@mastodon.socialM mayke@tech.lgbtM aparrish@friend.campA 3 Replies Last reply
                                  0
                                  • mcc@mastodon.socialM mcc@mastodon.social

                                    Servo rests atop wgpu. Therefore, if my OS's entire GUI layer is servo, and I believe that implementing webgpu is easier than implementing vulkan, I can increase my chances of writing a working video-acceleration driver if I simplify it so *the driver supplies wgpu*, instead of trying to support the full scope of DRI/DRM or OpenGL/Vulkan or whatever this entails.

                                    Two things I want, in both cases wgpu provides a critical, project-saving step.

                                    And oh, I think wgpu might be slop now. Never mind!

                                    crzwdjk@mastodon.socialC This user is from outside of this forum
                                    crzwdjk@mastodon.socialC This user is from outside of this forum
                                    crzwdjk@mastodon.social
                                    wrote sidst redigeret af
                                    #33

                                    @mcc Mesa does make implementing Vulkan somewhat easier, I think in some of the same ways that just implementing webgpu directly would, in that a lot of the redundant API surface is provided by shared code. And in particular you probably want to use Mesa for the compiler framework it provides, something that would be a pretty big lift otherwise. I think it doesn't have a WGSL frontend but that doesn't seem like it would be too hard to write.

                                    mcc@mastodon.socialM 1 Reply Last reply
                                    0
                                    • sabrina@fedi01.unicornsparkle.clubS sabrina@fedi01.unicornsparkle.club

                                      @mcc What's the smallest API and implementation necessary to accelerate a GUI so that it feels good? What's the minimum amount of hardware to support that acceleration?

                                      Like, could you do 10% of WebGPU on top of CPU SIMD (or whatever) extensions to make the GUI not painful? This is well below the level I have ever worked at, so I won't be surprised if the answer is "no".

                                      mcc@mastodon.socialM This user is from outside of this forum
                                      mcc@mastodon.socialM This user is from outside of this forum
                                      mcc@mastodon.social
                                      wrote sidst redigeret af
                                      #34

                                      @sabrina Yes, exactly. This is exactly the question I am posing. But here is the hard part:

                                      Imagine identifying the operations you need for a fast 2D desktop. Can you implement those operations in FPGA? Trivially. This would be a fun, fast project. *The software you want to run would not be written to use those operations*. Modern software is doing its 2D by sitting atop OpenGL or Vulkan. So the difficult part is *identifying parts of Vulkan and OpenGL* that in practice a 2D program uses.

                                      trurl@mastodon.sdf.orgT 1 Reply Last reply
                                      0
                                      • mcc@mastodon.socialM mcc@mastodon.social

                                        Rust wgpu now has a .agents/skills, a .claude/skills, an AGENTS.md, and a CLAUDE.md.

                                        Increasingly wondering if my goal of living in a way that I never benefit from the actions of generative AI users and generative AI users never benefit from the actions of me is going to inherently mean never using hardware-accelerated video on a computer again.

                                        rcombs@social.treehouse.systemsR This user is from outside of this forum
                                        rcombs@social.treehouse.systemsR This user is from outside of this forum
                                        rcombs@social.treehouse.systems
                                        wrote sidst redigeret af
                                        #35

                                        @mcc got bad news about the hardware itself

                                        mcc@mastodon.socialM 1 Reply Last reply
                                        0
                                        • rcombs@social.treehouse.systemsR rcombs@social.treehouse.systems

                                          @mcc got bad news about the hardware itself

                                          mcc@mastodon.socialM This user is from outside of this forum
                                          mcc@mastodon.socialM This user is from outside of this forum
                                          mcc@mastodon.social
                                          wrote sidst redigeret af
                                          #36

                                          @rcombs For thoughts on hardware, see the entire rest of the thread. I could use a RISCV CPU implementation made before 2025, if only I could display a triangle.

                                          1 Reply Last reply
                                          0
                                          Svar
                                          • Svar som emne
                                          Login for at svare
                                          • Ældste til nyeste
                                          • Nyeste til ældste
                                          • Most Votes


                                          • Log ind

                                          • Login or register to search.
                                          Powered by NodeBB Contributors
                                          Graciously hosted by data.coop
                                          • First post
                                            Last post
                                          0
                                          • Hjem
                                          • Seneste
                                          • Etiketter
                                          • Populære
                                          • Verden
                                          • Bruger
                                          • Grupper