Announcement

Collapse
No announcement yet.

Khronos + W3C Collaborating On SPIR-V Potentially Being The Shading Language For The Web

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

  • #11
    Originally posted by Marc Driftmeyer View Post

    Apple invented WebGPU. SPIR-IV is far slower but having that as an option for Non-Apple platforms makes sense as long as both are conformant to the WebGPU standard.
    As usual, they didn't invent it (do they ever invent anything, instead of taking ideas from others and just renaming them?). They weren't the first ones to come up with the general idea, there was a discussion of "WebVulkan" even before they came with theirs. Apple however pushed out a proposal that favored Metal. Good thing no one bought that as is.
    Last edited by shmerl; 29 November 2019, 01:26 AM.

    Comment


    • #12
      Originally posted by programmerjake View Post
      it's actually waaay more complex than that, assuming you want the shaders to run at any decent speed, but it is much simpler than glsl.
      You're braver than I if you compile and optimize random shaders from the internet with a single pass rather than an IR.

      Comment


      • #13
        Originally posted by microcode View Post

        You're braver than I if you compile and optimize random shaders from the internet with a single pass rather than an IR.
        Actually, I meant that Vulkan drivers don't necessarily check all the invariants that they later depend on in the initial translation to internal IR, several of the CFG-based invariants are quite complex to check for so Vulkan drivers assume the input is valid SPIR-V rather than verifying it.
        A conforming Vulkan implementation is allowed to scribble over all your files and memory if you give it an invalid SPIR-V shader.
        That is part of why a WebGPU (or similar) implementation needs to fully verify the SPIR-V before passing it to the Vulkan driver. (the other major reason to verify SPIR-V is to ensure more uniform behavior cross-platform).

        Comment

        Working...
        X