Initial implementation of a multithreaded fronted cache.
- Adds unit tests suite to verify the basic usages of the cache.
- Note: This change does NOT remove the device lock that is acquired
for object deletion at the moment. So as a result, the actual
effects shouldn't be apparent with this change. Furthermore,
this most likely will not be enabled on its own without a
parallel effort to add a WeakRef concept so that the cache
would hold on top WeakRefs to objects instead of raw pointers.
Bug: dawn:1769
Change-Id: I0f6a11f01c558875c2b120a55aa3c4232b501a3c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/136582
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Loko Kung <lokokung@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Dawn is an open-source and cross-platform implementation of the work-in-progress WebGPU standard. More precisely it implements webgpu.h that is a one-to-one mapping with the WebGPU IDL. Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
Dawn provides several WebGPU building blocks:
webgpu.h version that Dawn implements.webgpu.h.Helpful links:
Developer documentation:
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
(TODO)
Apache 2.0 Public License, please see LICENSE.
This is not an officially supported Google product.