mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-14 15:46:28 +00:00
Query API: Timestamp Query on Vulkan
- Add WriteTimestamp and ResolveQuerySet on Vulkan - Enable end2end tests of timestamp query on Vulkan - Lazy initialize the distination buffer in ResolveQuerySet Bug: dawn:434 Change-Id: Idbd117d6c198f6726ed922c08d030bb6fbae8be6 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/27540 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Austin Eng <enga@chromium.org> Commit-Queue: Hao Li <hao.x.li@intel.com>
This commit is contained in:
committed by
Commit Bot service account
parent
ac3765e663
commit
d6498a41ab
@@ -1174,9 +1174,8 @@ TEST_P(BufferZeroInitTest, ResolveQuerySet) {
|
||||
// Timestamp query is not supported on OpenGL
|
||||
DAWN_SKIP_TEST_IF(IsOpenGL());
|
||||
|
||||
// TODO(hao.x.li@intel.com): Remove it after timestamp query is implementated on Vulkan and
|
||||
// Metal
|
||||
DAWN_SKIP_TEST_IF(IsVulkan() || IsMetal());
|
||||
// TODO(hao.x.li@intel.com): Remove it after timestamp query is implementated on Metal
|
||||
DAWN_SKIP_TEST_IF(IsMetal());
|
||||
|
||||
// Skip if timestamp extension is not supported on device
|
||||
DAWN_SKIP_TEST_IF(!SupportsExtensions({"timestamp_query"}));
|
||||
|
||||
@@ -194,6 +194,9 @@ TEST_P(TimestampQueryTests, TimestampOnComputePass) {
|
||||
|
||||
// Test resolving timestamp query to one slot in the buffer
|
||||
TEST_P(TimestampQueryTests, ResolveToBufferWithOffset) {
|
||||
// TODO(hao.x.li@intel.com): Failed on old Intel Vulkan driver on Windows, need investigation.
|
||||
DAWN_SKIP_TEST_IF(IsWindows() && IsIntel() && IsVulkan());
|
||||
|
||||
constexpr uint32_t kQueryCount = 2;
|
||||
constexpr uint64_t kZero = 0;
|
||||
|
||||
@@ -229,4 +232,4 @@ TEST_P(TimestampQueryTests, ResolveToBufferWithOffset) {
|
||||
}
|
||||
}
|
||||
|
||||
DAWN_INSTANTIATE_TEST(TimestampQueryTests, D3D12Backend());
|
||||
DAWN_INSTANTIATE_TEST(TimestampQueryTests, D3D12Backend(), VulkanBackend());
|
||||
|
||||
Reference in New Issue
Block a user