Delay monolithic pipeline cache creation The monolithic pipeline cache was being created at device creation time which happens early in GPU process startup for graphite. The GPU disk cache data is loaded from browser and sent over to GPU process over IPC. The cache entry was never there so an empty VkPipelineCache is created. There is no point saving VkPipelineCache to disk if it's not used. Delay the creation, and thus cache lookup, until the monolithic pipeline cache is used for the first time. This isn't perfect but in local testing the cached data had arrived before lookup most of the time. This requires synchronization with once_call as multiple worker threads can be accessing cache. Bug: 399577692 Change-Id: Icc11bb6a9a7e15d083a5c279ca78e88247870960 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/241096 Commit-Queue: Kyle Charbonneau <kylechar@google.com> Reviewed-by: Loko Kung <lokokung@google.com>
Dawn is an open-source and cross-platform implementation of the 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)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.