commit | cf1fdf413cba44667db8206466b265510b05f47a | [log] [tgz] |
---|---|---|
author | Austin Eng <enga@chromium.org> | Mon Jun 15 23:42:13 2020 +0000 |
committer | Commit Bot service account <commit-bot@chromium.org> | Mon Jun 15 23:42:13 2020 +0000 |
tree | dd80359920778d52139a2e914838da06a45da7cb | |
parent | c3c2c9b6b09c5f7cdd6cebe77e29dbc2e16eaa4a [diff] |
Handle OOM buffer allocations better This CL checks buffer sizes before creating map read/write handles. It is an error to map a buffer that can't be addressed on the CPU. It also changes client-side synchronous errors on mapAsync to be normal map failures, and not device lost errors. These should be recoverable. The CL adds additional testing for really large, but not UINT64_MAX buffers, and fixes a VVL warning when buffer allocations exceed the size of their memory heap. Bug: dawn:450, dawn:398, chromium:1014740 Change-Id: Ieb34c04c3d01c429b7e3b7810729d5e91ecb6270 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/22626 Commit-Queue: Austin Eng <enga@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
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 webgpu.h docs)
(TODO)
Apache 2.0 Public License, please see LICENSE.
This is not an officially supported Google product.