Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Distinction between content-timeline and device-timeline state #2962

Open
kainino0x opened this issue May 26, 2022 · 3 comments
Open

Distinction between content-timeline and device-timeline state #2962

kainino0x opened this issue May 26, 2022 · 3 comments
Assignees
Labels
api WebGPU API copyediting Pure editorial stuff (copyediting, *.bs file syntax, etc.) moved-m0-to-m1 (TEMPORARY) items moved from M0 to M1 while trying to make M0 = requirements for CR
Milestone

Comments

@kainino0x
Copy link
Contributor

We already distinguish between content-timeline and device-timeline "steps" in the spec (though not 100% consistently, see #2961).

We should figure out (1) whether, and (2) how, to make the distinction between state on different timelines.
The most complex example is GPUBuffer, which has:

  • device timeline state: [[destroyed]]
  • state shared by multiple content timelines (when we have multithreading): map state
  • state specific to one content timeline: the actual mapped array buffer
  • (and of course a content-timeline interface object that can have expando properties and stuff)
@kainino0x kainino0x added the copyediting Pure editorial stuff (copyediting, *.bs file syntax, etc.) label May 26, 2022
@kainino0x kainino0x added this to the Polish post-V1 milestone May 26, 2022
@kainino0x
Copy link
Contributor Author

Another thing that I may as well roll into this issue:

We should find a better name for internal objects like "buffer", "texture", "device", something that's more descriptive like InternalBuffer, Handle, especially if we're going to associate state with it.

@kainino0x
Copy link
Contributor Author

Have started doing some of this work, in particular for buffer mapping since it's especially complex (#3300). We may or may not fully separate content and device timeline objects for V1 but we'll do what's needed to make the spec clear.

@kainino0x
Copy link
Contributor Author

#3382 established a pattern for doing this, now we just need to update the rest.

@kainino0x kainino0x modified the milestones: V1.0, Polish post-V1 Mar 2, 2023
@kainino0x kainino0x modified the milestones: Polish post-V1, V1.0 Aug 15, 2023
@kainino0x kainino0x added the api WebGPU API label Apr 30, 2024
@kainino0x kainino0x added the moved-m0-to-m1 (TEMPORARY) items moved from M0 to M1 while trying to make M0 = requirements for CR label Jul 1, 2024
@kainino0x kainino0x modified the milestones: Milestone 0, Milestone 1 Jul 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api WebGPU API copyediting Pure editorial stuff (copyediting, *.bs file syntax, etc.) moved-m0-to-m1 (TEMPORARY) items moved from M0 to M1 while trying to make M0 = requirements for CR
Projects
None yet
Development

No branches or pull requests

2 participants