Sitelet https://github.com/gpuweb/gpuweb/issues/1842
Skip to content

Should the API enforce that writable storage buffer bindings don't alias each other? #1842

Description

@Kangz

This is similar to #287: should multiple storage buffer bindings used by the same entrypoint be allowed to alias? CC @alan-baker @kvark

  • Making the behavior defined in native APIs can require a special "alias decoration", and it could be very subtle to add something similar to WGSL.
  • Undefined data races from aliasing could be a portability concern.
  • Validating lack of aliasing would incur additional draw/dispatch time validation.
  • What about a storage buffer used in a draw being modified by a different draw in the same render pass (that's currently allowed).
  • Aliasing seems like it could be useful to developers to use with different types, or to give flexibility of how bindings are mapped to actual buffers (two bindings in a shader could be backed by a buffer at different offsets).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

copyeditingPure editorial stuff (copyediting, *.bs file syntax, etc.)

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions