Only skip MatrixVectorMultiplyPerf on Mesa/llvmpipe
This patch only skips MatrixVectorMultiplyPerf on Mesa/llvmpipe
and enables the tests on Linux/Intel/Mesa.
Bug: dawn:2508
Change-Id: Iddfcdab5919eba62f24fc95ce36bb3277dcb7fd4
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/187302
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Jiawei Shao <jiawei.shao@intel.com>
diff --git a/src/dawn/tests/DawnTest.cpp b/src/dawn/tests/DawnTest.cpp
index ce054bf..cb9bfcb 100644
--- a/src/dawn/tests/DawnTest.cpp
+++ b/src/dawn/tests/DawnTest.cpp
@@ -890,6 +890,11 @@
mParam.adapterProperties.deviceID);
}
+bool DawnTestBase::IsMesaSoftware() const {
+ return gpu_info::IsMesaSoftware(mParam.adapterProperties.vendorID,
+ mParam.adapterProperties.deviceID);
+}
+
bool DawnTestBase::IsIntelGen9() const {
return gpu_info::IsIntelGen9(mParam.adapterProperties.vendorID,
mParam.adapterProperties.deviceID);
diff --git a/src/dawn/tests/DawnTest.h b/src/dawn/tests/DawnTest.h
index e58f2f4..f99ac48 100644
--- a/src/dawn/tests/DawnTest.h
+++ b/src/dawn/tests/DawnTest.h
@@ -263,6 +263,7 @@
bool IsANGLESwiftShader() const;
bool IsANGLED3D11() const;
bool IsWARP() const;
+ bool IsMesaSoftware() const;
bool IsIntelGen9() const;
bool IsIntelGen12() const;
diff --git a/src/dawn/tests/perf_tests/MatrixVectorMultiplyPerf.cpp b/src/dawn/tests/perf_tests/MatrixVectorMultiplyPerf.cpp
index f3ffa74..a6b022f 100644
--- a/src/dawn/tests/perf_tests/MatrixVectorMultiplyPerf.cpp
+++ b/src/dawn/tests/perf_tests/MatrixVectorMultiplyPerf.cpp
@@ -122,11 +122,9 @@
};
void MatrixVectorMultiplyPerf::SetUp() {
- // TODO(crbug.com/dawn/2508): Fails due to an OS/driver upgrade on Linux/Intel.
- // Can't specify IsIntel() since this fails with llvmpipe, where IsIntel() is
- // false. This must also be checked before SetUp() since the crash happens in
- // SetUp() itself.
- DAWN_SUPPRESS_TEST_IF(IsLinux() && IsVulkan() && IsMesa("23.2.1") &&
+ // TODO(crbug.com/dawn/2508): Fails due to an OS/driver upgrade on Linux/llvmpipe.
+ // This must also be checked before SetUp() since the crash happens in SetUp() itself.
+ DAWN_SUPPRESS_TEST_IF(IsLinux() && IsVulkan() && IsMesa("23.2.1") && IsMesaSoftware() &&
GetParam().mStoreType == StoreType::F32);
DawnPerfTestWithParams<MatrixVectorMultiplyParams>::SetUp();