infra: Enable gles3 deqp tests with direct SPIR-V generation
Enabled on Linux/Nvidia, Windows/Nvidia and Pixel4.
Bug: angleproject:4889
Change-Id: I2462b7fa7801b766f4359103a5253209b7fded28
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3047381
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
diff --git a/infra/specs/angle.json b/infra/specs/angle.json
index 19e7458..35d9bea 100644
--- a/infra/specs/angle.json
+++ b/infra/specs/angle.json
@@ -156,6 +156,44 @@
"args": [
"angle_deqp_gles3_tests",
"--use-angle=vulkan",
+ "--direct-spirv-gen",
+ "-v",
+ "--shard-timeout=500"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_gles3_vulkan_spirvgen_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "cipd_packages": [
+ {
+ "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
+ "location": "bin",
+ "revision": "git_revision:ff387eadf445b24c935f1cf7d6ddd279f8a6b04c"
+ }
+ ],
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "device_os": "R",
+ "device_os_type": "userdebug",
+ "device_type": "flame",
+ "os": "Android",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+ "shards": 12
+ },
+ "test": "angle_deqp_gles3_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_gles3_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_gles3_tests",
+ "--use-angle=vulkan",
"-v",
"--shard-timeout=500"
],
@@ -302,6 +340,44 @@
"args": [
"angle_deqp_khr_gles3_tests",
"--use-angle=vulkan",
+ "--direct-spirv-gen",
+ "-v",
+ "--shard-timeout=500"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_khr_gles3_vulkan_spirvgen_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "cipd_packages": [
+ {
+ "cipd_package": "infra/tools/luci/logdog/butler/${platform}",
+ "location": "bin",
+ "revision": "git_revision:ff387eadf445b24c935f1cf7d6ddd279f8a6b04c"
+ }
+ ],
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "device_os": "R",
+ "device_os_type": "userdebug",
+ "device_type": "flame",
+ "os": "Android",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+ "shards": 2
+ },
+ "test": "angle_deqp_khr_gles3_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_khr_gles3_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_khr_gles3_tests",
+ "--use-angle=vulkan",
"-v",
"--shard-timeout=500"
],
@@ -1132,6 +1208,34 @@
"args": [
"angle_deqp_gles3_tests",
"--use-angle=vulkan",
+ "--direct-spirv-gen",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_gles3_vulkan_spirvgen_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "gpu": "10de:1cb3-418.56",
+ "os": "Ubuntu-19.04",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+ "shards": 4
+ },
+ "test": "angle_deqp_gles3_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_gles3_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_gles3_tests",
+ "--use-angle=vulkan",
"--bot-mode"
],
"merge": {
@@ -1237,6 +1341,33 @@
"args": [
"angle_deqp_khr_gles3_tests",
"--use-angle=vulkan",
+ "--direct-spirv-gen",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_khr_gles3_vulkan_spirvgen_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "gpu": "10de:1cb3-418.56",
+ "os": "Ubuntu-19.04",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_deqp_khr_gles3_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_khr_gles3_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_khr_gles3_tests",
+ "--use-angle=vulkan",
"--bot-mode"
],
"merge": {
@@ -2693,6 +2824,34 @@
"args": [
"angle_deqp_gles3_tests",
"--use-angle=vulkan",
+ "--direct-spirv-gen",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_gles3_vulkan_spirvgen_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "gpu": "10de:1cb3-27.21.14.5148",
+ "os": "Windows-10-18363",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+ "shards": 4
+ },
+ "test": "angle_deqp_gles3_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_gles3_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_gles3_tests",
+ "--use-angle=vulkan",
"--bot-mode"
],
"merge": {
@@ -2798,6 +2957,33 @@
"args": [
"angle_deqp_khr_gles3_tests",
"--use-angle=vulkan",
+ "--direct-spirv-gen",
+ "--bot-mode"
+ ],
+ "merge": {
+ "script": "//scripts/angle_deqp_test_merge.py"
+ },
+ "name": "angle_deqp_khr_gles3_vulkan_spirvgen_tests",
+ "swarming": {
+ "can_use_on_swarming_builders": true,
+ "containment_type": "AUTO",
+ "dimension_sets": [
+ {
+ "gpu": "10de:1cb3-27.21.14.5148",
+ "os": "Windows-10-18363",
+ "pool": "chromium.tests.gpu"
+ }
+ ],
+ "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+ },
+ "test": "angle_deqp_khr_gles3_tests",
+ "test_id_prefix": "ninja://src/tests:angle_deqp_khr_gles3_tests/",
+ "use_isolated_scripts_api": true
+ },
+ {
+ "args": [
+ "angle_deqp_khr_gles3_tests",
+ "--use-angle=vulkan",
"--bot-mode"
],
"merge": {
diff --git a/infra/specs/test_suites.pyl b/infra/specs/test_suites.pyl
index 7a07ab8..cfceee3 100644
--- a/infra/specs/test_suites.pyl
+++ b/infra/specs/test_suites.pyl
@@ -519,6 +519,34 @@
},
},
+ 'angle_deqp_gles3_vulkan_spirvgen_gtests': {
+ 'angle_deqp_gles3_vulkan_spirvgen_tests': {
+ 'args': [
+ 'angle_deqp_gles3_tests',
+ '--use-angle=vulkan',
+ '--direct-spirv-gen',
+ ],
+ 'android_args': [
+ '-v',
+ '--shard-timeout=500',
+ ],
+ 'android_swarming': {
+ 'shards': 12,
+ },
+ 'desktop_args': [
+ '--bot-mode',
+ ],
+ 'merge': {
+ 'script': '//scripts/angle_deqp_test_merge.py',
+ },
+ 'swarming': {
+ 'shards': 4,
+ },
+ 'test': 'angle_deqp_gles3_tests',
+ 'use_isolated_scripts_api': True,
+ },
+ },
+
'angle_deqp_khr_gles2_vulkan_gtests': {
'angle_deqp_khr_gles2_vulkan_tests': {
'args': [
@@ -609,6 +637,31 @@
},
},
+ 'angle_deqp_khr_gles3_vulkan_spirvgen_gtests': {
+ 'angle_deqp_khr_gles3_vulkan_spirvgen_tests': {
+ 'args': [
+ 'angle_deqp_khr_gles3_tests',
+ '--use-angle=vulkan',
+ '--direct-spirv-gen',
+ ],
+ 'android_args': [
+ '-v',
+ '--shard-timeout=500',
+ ],
+ 'android_swarming': {
+ 'shards': 2,
+ },
+ 'desktop_args': [
+ '--bot-mode',
+ ],
+ 'merge': {
+ 'script': '//scripts/angle_deqp_test_merge.py',
+ },
+ 'test': 'angle_deqp_khr_gles3_tests',
+ 'use_isolated_scripts_api': True,
+ },
+ },
+
'angle_end2end_gtests': {
'angle_end2end_tests': {
'android_args': [
@@ -798,10 +851,12 @@
'angle_deqp_gles2_vulkan_spirvgen_gtests',
'angle_deqp_gles31_vulkan_gtests',
'angle_deqp_gles3_vulkan_gtests',
+ 'angle_deqp_gles3_vulkan_spirvgen_gtests',
'angle_deqp_khr_gles2_vulkan_gtests',
'angle_deqp_khr_gles31_vulkan_gtests',
'angle_deqp_khr_gles32_vulkan_gtests',
'angle_deqp_khr_gles3_vulkan_gtests',
+ 'angle_deqp_khr_gles3_vulkan_spirvgen_gtests',
'angle_end2end_gtests',
'angle_unit_gtests',
],
@@ -834,10 +889,12 @@
'angle_deqp_gles3_vulkan_rotate180_gtests',
'angle_deqp_gles3_vulkan_rotate270_gtests',
'angle_deqp_gles3_vulkan_rotate90_gtests',
+ 'angle_deqp_gles3_vulkan_spirvgen_gtests',
'angle_deqp_khr_gles2_vulkan_gtests',
'angle_deqp_khr_gles31_vulkan_gtests',
'angle_deqp_khr_gles32_vulkan_gtests',
'angle_deqp_khr_gles3_vulkan_gtests',
+ 'angle_deqp_khr_gles3_vulkan_spirvgen_gtests',
'angle_end2end_gtests',
'angle_unit_gtests',
'angle_white_box_gtests',
@@ -887,10 +944,12 @@
'angle_deqp_gles3_vulkan_rotate180_gtests',
'angle_deqp_gles3_vulkan_rotate270_gtests',
'angle_deqp_gles3_vulkan_rotate90_gtests',
+ 'angle_deqp_gles3_vulkan_spirvgen_gtests',
'angle_deqp_khr_gles2_vulkan_gtests',
'angle_deqp_khr_gles31_vulkan_gtests',
'angle_deqp_khr_gles32_vulkan_gtests',
'angle_deqp_khr_gles3_vulkan_gtests',
+ 'angle_deqp_khr_gles3_vulkan_spirvgen_gtests',
'angle_end2end_gtests',
'angle_gles1_conformance_gtests',
'angle_unit_gtests',
diff --git a/scripts/code_generation_hashes/Test_spec_JSON.json b/scripts/code_generation_hashes/Test_spec_JSON.json
index b732493..21f1309 100644
--- a/scripts/code_generation_hashes/Test_spec_JSON.json
+++ b/scripts/code_generation_hashes/Test_spec_JSON.json
@@ -1,6 +1,6 @@
{
"infra/specs/angle.json":
- "6b5d3140fd8bcacbbf178c9ab7f3ca18",
+ "491b2ce67872b15dfc876527f60e8eac",
"infra/specs/generate_test_spec_json.py":
"348921bf70270ec6ee51fbb7e97d6925",
"infra/specs/mixins.pyl":
@@ -8,7 +8,7 @@
"infra/specs/test_suite_exceptions.pyl":
"723460da84a90884a9668c07a0893390",
"infra/specs/test_suites.pyl":
- "1fc47f5463680c2b1de303ee9c2f4189",
+ "7f8bfb80651e592d04fced9d40766215",
"infra/specs/variants.pyl":
"8cfcaa99fa07ad2a2d5d14f220fd5037",
"infra/specs/waterfalls.pyl":