Add suppressed end2end tests back on Intel Windows Vulkan
Vulkan backend had been disabled on Intel Windows Vulkan driver < 30.0.101.2111, these suppressed end2end tests are fixed on that version and later, we can remove the suppression. Bug: dawn:1392, dawn:819, dawn:1172, dawn:1489 Change-Id: I91a8dfac833b068e8e3bb70d9f9af977f7b6026c Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/113610 Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Austin Eng <enga@chromium.org> Reviewed-by: Austin Eng <enga@chromium.org>
This commit is contained in:
parent
6bd13328fb
commit
ad57a58488
|
@ -2178,11 +2178,6 @@ TEST_P(CopyTests_T2T, CopyWithinSameTextureNonOverlappedSlices) {
|
||||||
// A regression test (from WebGPU CTS) for an Intel D3D12 driver bug about T2T copy with specific
|
// A regression test (from WebGPU CTS) for an Intel D3D12 driver bug about T2T copy with specific
|
||||||
// texture formats. See http://crbug.com/1161355 for more details.
|
// texture formats. See http://crbug.com/1161355 for more details.
|
||||||
TEST_P(CopyTests_T2T, CopyFromNonZeroMipLevelWithTexelBlockSizeLessThan4Bytes) {
|
TEST_P(CopyTests_T2T, CopyFromNonZeroMipLevelWithTexelBlockSizeLessThan4Bytes) {
|
||||||
// This test can pass on the Windows Intel Vulkan driver version 27.20.100.9168.
|
|
||||||
// TODO(crbug.com/dawn/819): enable this test on Intel Vulkan drivers after the upgrade of
|
|
||||||
// try bots.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsVulkan() && IsWindows() && IsIntel());
|
|
||||||
|
|
||||||
constexpr std::array<wgpu::TextureFormat, 11> kFormats = {
|
constexpr std::array<wgpu::TextureFormat, 11> kFormats = {
|
||||||
{wgpu::TextureFormat::RG8Sint, wgpu::TextureFormat::RG8Uint, wgpu::TextureFormat::RG8Snorm,
|
{wgpu::TextureFormat::RG8Sint, wgpu::TextureFormat::RG8Uint, wgpu::TextureFormat::RG8Snorm,
|
||||||
wgpu::TextureFormat::RG8Unorm, wgpu::TextureFormat::R16Float, wgpu::TextureFormat::R16Sint,
|
wgpu::TextureFormat::RG8Unorm, wgpu::TextureFormat::R16Float, wgpu::TextureFormat::R16Sint,
|
||||||
|
|
|
@ -105,9 +105,6 @@ TEST_P(MaxLimitTests, MaxBufferBindingSize) {
|
||||||
// The uniform buffer layout used in this test is not supported on ES.
|
// The uniform buffer layout used in this test is not supported on ES.
|
||||||
DAWN_TEST_UNSUPPORTED_IF(IsOpenGLES());
|
DAWN_TEST_UNSUPPORTED_IF(IsOpenGLES());
|
||||||
|
|
||||||
// TODO(crbug.com/dawn/1172)
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
// TODO(crbug.com/dawn/1217): Remove this suppression.
|
// TODO(crbug.com/dawn/1217): Remove this suppression.
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsNvidia());
|
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsNvidia());
|
||||||
DAWN_SUPPRESS_TEST_IF(IsLinux() && IsVulkan() && IsNvidia());
|
DAWN_SUPPRESS_TEST_IF(IsLinux() && IsVulkan() && IsNvidia());
|
||||||
|
|
|
@ -246,14 +246,6 @@ TEST_P(OcclusionQueryTests, QueryWithDepthStencilTest) {
|
||||||
// zero indicates that no sample passed scissor testing,
|
// zero indicates that no sample passed scissor testing,
|
||||||
// non-zero indicates that at least one sample passed scissor testing.
|
// non-zero indicates that at least one sample passed scissor testing.
|
||||||
TEST_P(OcclusionQueryTests, QueryWithScissorTest) {
|
TEST_P(OcclusionQueryTests, QueryWithScissorTest) {
|
||||||
// TODO(hao.x.li@intel.com): It's failed weirdly on Intel TGL(Window Vulkan) which says
|
|
||||||
// the destination buffer keep sentinel value in the second case, it cannot be reproduced with
|
|
||||||
// any debug actions including Vulkan validation layers enabled, and takes time to find out if
|
|
||||||
// the WriteBuffer and ResolveQuerySet are not executed in order or the ResolveQuerySet does not
|
|
||||||
// copy the result to the buffer. In order to integrate end2end tests to Intel driver CL without
|
|
||||||
// unknown issues, skip it until we find the root cause.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
// Test there are samples passed scissor testing, the expected occlusion result is non-zero.
|
// Test there are samples passed scissor testing, the expected occlusion result is non-zero.
|
||||||
TestOcclusionQueryWithScissorTest({2, 1, 2, 1}, OcclusionExpectation::Result::NonZero);
|
TestOcclusionQueryWithScissorTest({2, 1, 2, 1}, OcclusionExpectation::Result::NonZero);
|
||||||
|
|
||||||
|
@ -301,11 +293,6 @@ TEST_P(OcclusionQueryTests, Rewrite) {
|
||||||
// Test resolving occlusion query correctly if the queries are written sparsely, which also tests
|
// Test resolving occlusion query correctly if the queries are written sparsely, which also tests
|
||||||
// the query resetting at the start of render passes on Vulkan backend.
|
// the query resetting at the start of render passes on Vulkan backend.
|
||||||
TEST_P(OcclusionQueryTests, ResolveSparseQueries) {
|
TEST_P(OcclusionQueryTests, ResolveSparseQueries) {
|
||||||
// TODO(hao.x.li@intel.com): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
// TODO(hao.x.li@intel.com): Investigate why it's failed on D3D12 on Nvidia when running with
|
// TODO(hao.x.li@intel.com): Investigate why it's failed on D3D12 on Nvidia when running with
|
||||||
// the previous occlusion tests. Expect resolve to 0 for these unwritten queries but the
|
// the previous occlusion tests. Expect resolve to 0 for these unwritten queries but the
|
||||||
// occlusion result of the previous tests is got.
|
// occlusion result of the previous tests is got.
|
||||||
|
@ -737,11 +724,6 @@ TEST_P(TimestampQueryTests, TimestampOnCommandEncoder) {
|
||||||
|
|
||||||
// Test timestampWrites with query set in compute pass descriptor
|
// Test timestampWrites with query set in compute pass descriptor
|
||||||
TEST_P(TimestampQueryTests, TimestampWritesQuerySetOnComputePass) {
|
TEST_P(TimestampQueryTests, TimestampWritesQuerySetOnComputePass) {
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
// TODO (dawn:1473): Metal bug which fails to store GPU counters to different sample buffer.
|
// TODO (dawn:1473): Metal bug which fails to store GPU counters to different sample buffer.
|
||||||
DAWN_SUPPRESS_TEST_IF(IsMacOS() && IsMetal() && IsApple());
|
DAWN_SUPPRESS_TEST_IF(IsMacOS() && IsMetal() && IsApple());
|
||||||
|
|
||||||
|
@ -755,11 +737,6 @@ TEST_P(TimestampQueryTests, TimestampWritesQuerySetOnComputePass) {
|
||||||
|
|
||||||
// Test timestampWrites with query index in compute pass descriptor
|
// Test timestampWrites with query index in compute pass descriptor
|
||||||
TEST_P(TimestampQueryTests, TimestampWritesQueryIndexOnComputePass) {
|
TEST_P(TimestampQueryTests, TimestampWritesQueryIndexOnComputePass) {
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
constexpr uint32_t kQueryCount = 2;
|
constexpr uint32_t kQueryCount = 2;
|
||||||
|
|
||||||
// Set timestampWrites with different query indexes on same compute pass
|
// Set timestampWrites with different query indexes on same compute pass
|
||||||
|
@ -793,11 +770,6 @@ TEST_P(TimestampQueryTests, TimestampWritesQueryIndexOnComputePass) {
|
||||||
|
|
||||||
// Test timestampWrites with timestamp location in compute pass descriptor
|
// Test timestampWrites with timestamp location in compute pass descriptor
|
||||||
TEST_P(TimestampQueryTests, TimestampWritesLocationOnComputePass) {
|
TEST_P(TimestampQueryTests, TimestampWritesLocationOnComputePass) {
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
constexpr uint32_t kQueryCount = 2;
|
constexpr uint32_t kQueryCount = 2;
|
||||||
|
|
||||||
// Set timestampWrites with only one value of ComputePassTimestampLocation
|
// Set timestampWrites with only one value of ComputePassTimestampLocation
|
||||||
|
@ -823,11 +795,6 @@ TEST_P(TimestampQueryTests, TimestampWritesLocationOnComputePass) {
|
||||||
|
|
||||||
// Test timestampWrites on compute pass without pipeline
|
// Test timestampWrites on compute pass without pipeline
|
||||||
TEST_P(TimestampQueryTests, TimestampWritesOnComputePassWithNoPipline) {
|
TEST_P(TimestampQueryTests, TimestampWritesOnComputePassWithNoPipline) {
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
// TODO (dawn:1473): Metal fails to store GPU counters to sampleBufferAttachments on empty
|
// TODO (dawn:1473): Metal fails to store GPU counters to sampleBufferAttachments on empty
|
||||||
// encoders.
|
// encoders.
|
||||||
DAWN_SUPPRESS_TEST_IF(IsMacOS() && IsMetal() && IsApple());
|
DAWN_SUPPRESS_TEST_IF(IsMacOS() && IsMetal() && IsApple());
|
||||||
|
@ -841,11 +808,6 @@ TEST_P(TimestampQueryTests, TimestampWritesOnComputePassWithNoPipline) {
|
||||||
|
|
||||||
// Test timestampWrites with query set in render pass descriptor
|
// Test timestampWrites with query set in render pass descriptor
|
||||||
TEST_P(TimestampQueryTests, TimestampWritesQuerySetOnRenderPass) {
|
TEST_P(TimestampQueryTests, TimestampWritesQuerySetOnRenderPass) {
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
// TODO (dawn:1473): Metal bug which fails to store GPU counters to different sample buffer.
|
// TODO (dawn:1473): Metal bug which fails to store GPU counters to different sample buffer.
|
||||||
DAWN_SUPPRESS_TEST_IF(IsMacOS() && IsMetal() && IsApple());
|
DAWN_SUPPRESS_TEST_IF(IsMacOS() && IsMetal() && IsApple());
|
||||||
|
|
||||||
|
@ -859,11 +821,6 @@ TEST_P(TimestampQueryTests, TimestampWritesQuerySetOnRenderPass) {
|
||||||
|
|
||||||
// Test timestampWrites with query index in compute pass descriptor
|
// Test timestampWrites with query index in compute pass descriptor
|
||||||
TEST_P(TimestampQueryTests, TimestampWritesQueryIndexOnRenderPass) {
|
TEST_P(TimestampQueryTests, TimestampWritesQueryIndexOnRenderPass) {
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
// Set timestampWrites with different query indexes and locations, not need test write same
|
// Set timestampWrites with different query indexes and locations, not need test write same
|
||||||
// query index due to it's not allowed on render pass.
|
// query index due to it's not allowed on render pass.
|
||||||
wgpu::QuerySet querySet = CreateQuerySetForTimestamp(2);
|
wgpu::QuerySet querySet = CreateQuerySetForTimestamp(2);
|
||||||
|
@ -874,11 +831,6 @@ TEST_P(TimestampQueryTests, TimestampWritesQueryIndexOnRenderPass) {
|
||||||
|
|
||||||
// Test timestampWrites with timestamp location in render pass descriptor
|
// Test timestampWrites with timestamp location in render pass descriptor
|
||||||
TEST_P(TimestampQueryTests, TimestampWritesLocationOnRenderPass) {
|
TEST_P(TimestampQueryTests, TimestampWritesLocationOnRenderPass) {
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
// Set timestampWrites with only one value of RenderPassTimestampLocation
|
// Set timestampWrites with only one value of RenderPassTimestampLocation
|
||||||
{
|
{
|
||||||
wgpu::QuerySet querySet = CreateQuerySetForTimestamp(2);
|
wgpu::QuerySet querySet = CreateQuerySetForTimestamp(2);
|
||||||
|
@ -902,11 +854,6 @@ TEST_P(TimestampQueryTests, TimestampWritesLocationOnRenderPass) {
|
||||||
|
|
||||||
// Test timestampWrites on render pass without pipeline
|
// Test timestampWrites on render pass without pipeline
|
||||||
TEST_P(TimestampQueryTests, TimestampWritesOnRenderPassWithNoPipline) {
|
TEST_P(TimestampQueryTests, TimestampWritesOnRenderPassWithNoPipline) {
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
wgpu::QuerySet querySet = CreateQuerySetForTimestamp(2);
|
wgpu::QuerySet querySet = CreateQuerySetForTimestamp(2);
|
||||||
TestTimestampWritesOnRenderPass({{querySet, 0, wgpu::RenderPassTimestampLocation::Beginning},
|
TestTimestampWritesOnRenderPass({{querySet, 0, wgpu::RenderPassTimestampLocation::Beginning},
|
||||||
{querySet, 1, wgpu::RenderPassTimestampLocation::End}},
|
{querySet, 1, wgpu::RenderPassTimestampLocation::End}},
|
||||||
|
@ -917,11 +864,6 @@ TEST_P(TimestampQueryTests, TimestampWritesOnRenderPassWithNoPipline) {
|
||||||
TEST_P(TimestampQueryTests, TimestampWritesOnRenderPassWithOnlyVertexStage) {
|
TEST_P(TimestampQueryTests, TimestampWritesOnRenderPassWithOnlyVertexStage) {
|
||||||
DAWN_TEST_UNSUPPORTED_IF(HasToggleEnabled("use_placeholder_fragment_in_vertex_only_pipeline"));
|
DAWN_TEST_UNSUPPORTED_IF(HasToggleEnabled("use_placeholder_fragment_in_vertex_only_pipeline"));
|
||||||
|
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
wgpu::QuerySet querySet = CreateQuerySetForTimestamp(2);
|
wgpu::QuerySet querySet = CreateQuerySetForTimestamp(2);
|
||||||
TestTimestampWritesOnRenderPass({{querySet, 0, wgpu::RenderPassTimestampLocation::Beginning},
|
TestTimestampWritesOnRenderPass({{querySet, 0, wgpu::RenderPassTimestampLocation::Beginning},
|
||||||
{querySet, 1, wgpu::RenderPassTimestampLocation::End}},
|
{querySet, 1, wgpu::RenderPassTimestampLocation::End}},
|
||||||
|
@ -951,11 +893,6 @@ TEST_P(TimestampQueryTests, ResolveFromAnotherEncoder) {
|
||||||
|
|
||||||
// Test resolving timestamp query correctly if the queries are written sparsely
|
// Test resolving timestamp query correctly if the queries are written sparsely
|
||||||
TEST_P(TimestampQueryTests, ResolveSparseQueries) {
|
TEST_P(TimestampQueryTests, ResolveSparseQueries) {
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
constexpr uint32_t kQueryCount = 4;
|
constexpr uint32_t kQueryCount = 4;
|
||||||
|
|
||||||
wgpu::QuerySet querySet = CreateQuerySetForTimestamp(kQueryCount);
|
wgpu::QuerySet querySet = CreateQuerySetForTimestamp(kQueryCount);
|
||||||
|
@ -1002,11 +939,6 @@ TEST_P(TimestampQueryTests, ResolveWithoutWritten) {
|
||||||
|
|
||||||
// Test resolving timestamp query to one slot in the buffer
|
// Test resolving timestamp query to one slot in the buffer
|
||||||
TEST_P(TimestampQueryTests, ResolveToBufferWithOffset) {
|
TEST_P(TimestampQueryTests, ResolveToBufferWithOffset) {
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
constexpr uint32_t kQueryCount = 2;
|
constexpr uint32_t kQueryCount = 2;
|
||||||
constexpr uint64_t kBufferSize = kQueryCount * sizeof(uint64_t) + kMinDestinationOffset;
|
constexpr uint64_t kBufferSize = kQueryCount * sizeof(uint64_t) + kMinDestinationOffset;
|
||||||
constexpr uint64_t kCount = kQueryCount + kMinCount;
|
constexpr uint64_t kCount = kQueryCount + kMinCount;
|
||||||
|
@ -1052,11 +984,6 @@ TEST_P(TimestampQueryTests, ResolveToBufferWithOffset) {
|
||||||
// Test resolving a query set twice into the same destination buffer with potentially overlapping
|
// Test resolving a query set twice into the same destination buffer with potentially overlapping
|
||||||
// ranges
|
// ranges
|
||||||
TEST_P(TimestampQueryTests, ResolveTwiceToSameBuffer) {
|
TEST_P(TimestampQueryTests, ResolveTwiceToSameBuffer) {
|
||||||
// TODO(dawn:1489): Fails on Intel Windows Vulkan due to a driver issue that
|
|
||||||
// vkCmdFillBuffer and vkCmdCopyQueryPoolResults are not executed in order, skip it until
|
|
||||||
// the issue is fixed.
|
|
||||||
DAWN_SUPPRESS_TEST_IF(IsWindows() && IsVulkan() && IsIntel());
|
|
||||||
|
|
||||||
// TODO(dawn:1546): Intel D3D driver regression on Gen12 GPUs. The compute shader in two
|
// TODO(dawn:1546): Intel D3D driver regression on Gen12 GPUs. The compute shader in two
|
||||||
// ResolveQuerySet execute wrong.
|
// ResolveQuerySet execute wrong.
|
||||||
DAWN_SUPPRESS_TEST_IF(IsD3D12() && IsIntelGen12());
|
DAWN_SUPPRESS_TEST_IF(IsD3D12() && IsIntelGen12());
|
||||||
|
|
Loading…
Reference in New Issue