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

Use gfx-rs' pipeline cache object #241

Open
1 of 3 tasks
zakorgy opened this issue Dec 6, 2018 · 1 comment
Open
1 of 3 tasks

Use gfx-rs' pipeline cache object #241

zakorgy opened this issue Dec 6, 2018 · 1 comment

Comments

@zakorgy
Copy link

zakorgy commented Dec 6, 2018

Currently creating a new Renderer instance in Gecko or resizing the window takes too much time, especially with DX12. We can speed up this by using pipeline cache from gfx-rs.
Pipeline cache support in gfx-rs on different platforms:

  • DX12
  • Vulkan
  • Metal

Adding the code for cache creation/usage on the WR side would be an easy task. What we have to figure out is how to store the cache between multiple runs. Unfortunately there is no functionality in gfx-rs, to write\load a pipeline cache into/from a file yet. As a workaround we could try to store/update the cache in the memory on the Gecko side after a Renderer instance is destroyed and use it for the next ones.

@zakorgy
Copy link
Author

zakorgy commented Dec 6, 2018

I checked this and implemented the missing parts in ash and my gfx-rs fork to enable the read/write of the pipeline caches from/into a file (Vulkan only). Also created a WIP branch where we use pipeline cache in our WR.

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

No branches or pull requests

1 participant