Jeff Bolz [Thu, 18 Jul 2019 19:45:02 +0000 (14:45 -0500)]
Share instance/device across test case instances in dEQP-VK.synchronization.*
Some of the dEQP-VK.synchronization.* test groups create new devices or new
instances for each test case. This is a really expensive thing to do tens of
thousands of times, and makes this the longest-running test group in the CTS.
This change uses singleton objects to store the instance/device, and adds
cleanup callbacks to destroy the singletons when the group is finished.
VK-GL-CTS Issue: 1886
Components: Vulkan
Affects: dEQP-VK.synchronization.*
Change-Id: If935b457276790faf4a86e6f2afb5fd911987a85
(cherry picked from commit
90e05499c49c88fc4063748574931c3be5652b07)
Alexander Galazin [Thu, 3 Oct 2019 09:13:32 +0000 (11:13 +0200)]
Whitelist Vulkan CTS 1.1.5.2
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: I4a372accb5bc99345f55cea56140bd013b96b3f2
Yahan Zhou [Mon, 30 Sep 2019 22:12:45 +0000 (15:12 -0700)]
Extended: texel_view_compatible: image: fix image coord
Image coords in compute shaders need manual +0.5.
Affects:
dEQP-VK.image.texel_view_compatible.compute.extended.*.texture.*
Components: Vulkan
VK-GL-CTS issue: 1890
Change-Id: Iec93340004807252b0956e3d2fa19bacb899ff7b
Gary Sweet [Thu, 1 Aug 2019 11:50:40 +0000 (12:50 +0100)]
Account for precision loss in unorm depth pipeline
https://gerrit.khronos.org/#/c/4049/ introduced a regression
related to the use of depths other than 0.0 and 1.0 in the round-trip
to the depth buffer and back.
The test can now write 1.0/255.0 to gl_FragDepth and expects to see
exactly 1.0/255.0 when it is read back in the input attachment.
The unorm depth formats are only specified to be exact for the integer
values (0.0 and 1.0). We can differ by 1-bit after the round-trip.
This change adds an epsilon range check for the unorm depth tests
that resolve the issue.
Affected tests:
dEQP-VK.renderpass.dedicated_allocation.*
dEQP-VK.renderpass.suballocation.*
dEQP-VK.renderpass2.dedicated_allocation.*
dEQP-VK.renderpass2.suballocation.*
Components: Vulkan
VK_GL_CTS issue: 1908
Change-Id: Iaec3503595afd3409d2c21d8af72b469467d6673
(cherry picked from commit
611bdb3a21879d726d11a42d87639c686531ae79)
Alexander Galazin [Tue, 1 Oct 2019 10:36:16 +0000 (12:36 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: Iada24773960c88053e0a1f2fed3700a0e0df408a
Alexander Galazin [Tue, 1 Oct 2019 09:52:37 +0000 (11:52 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I7df0259f0457521714e530c44ef34b741d230d37
Marcin Kańtoch [Mon, 23 Sep 2019 16:41:58 +0000 (18:41 +0200)]
Add check if usage is supported for image format
dEQP-VK.image.swapchain_mutable* tests do not check
if the required usage is supported for image format
and image view format.
Components: Vulkan
Affects:
dEQP-VK.image.swapchain_mutable*
VK-GL-CTS issue: 2015
Change-Id: I6680d9e6ef1b03462afa01349b6f34d82ef40a17
Chris Forbes [Thu, 26 Sep 2019 14:51:32 +0000 (07:51 -0700)]
Exclude dEQP-VK.ssbo.layout.random.scalar.75 from Android CTS
This is already excluded from the Khronos mustpass lists.
VK-GL-CTS Issue: 1829
Google bug: b/
141657868
Google bug: b/
135200048
Components: Android
Change-Id: I6b453819314cc2e8245ac9d518ef4b481fe90887
Alexander Galazin [Mon, 30 Sep 2019 11:47:33 +0000 (13:47 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I6bb3fb9e6349caed5b4d8f936772051eb4bca529
Alexander Galazin [Mon, 30 Sep 2019 09:52:36 +0000 (11:52 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: Ia87303a933940e5483b80b97139f750e5debec10
Mike Byrne [Wed, 18 Sep 2019 14:50:31 +0000 (15:50 +0100)]
Check write vertex support in descriptor indexing
The descriptor indexing tests which are intended to test vertex write
check if the vertexPipelineStoresAndAtomics feature is supported before
loading the descriptorIndexing_vertx_shaderWrites shader. The vertex
write verifcation needs the same check to ensure the verification is
not run when the shader is not present.
Affects: dEQP-VK.descriptor_indexing*
VK-GL-CTS Issue: 2013
Change-Id: I3870b95b65c0b657708788b9bd2a7adcb5bd8f3d
Components: Vulkan
Lingfeng Yang [Thu, 15 Aug 2019 22:41:23 +0000 (15:41 -0700)]
1d_image: enforce height 1 in decompress stage as well
Affects:
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image*
Components: Vulkan
VK-GL-CTS issue: 1920
Change-Id: Id98f0a8dd132da5bcd6a3f1426021c8f36a48149
Yahan Zhou [Wed, 7 Aug 2019 19:44:50 +0000 (12:44 -0700)]
1d_image: basic: compute: texel_view_compatible: set size.y to 1
1d images need to have size.y=1. Otherwise Vulkan validation layer will
complain.
Affects:
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image*
Components: Vulkan
VK-GL-CTS issue: 1920
Change-Id: I0dd24d612aafb416a74b5eb6f16bb55c76175a0f
Yahan Zhou [Fri, 9 Aug 2019 18:35:15 +0000 (11:35 -0700)]
Texel view compatible: Image: proper check for image format supports
The queried image usage is different from what is acutally used. Fix it
so that we would not end up with an unsupported usage.
Affects:
dEQP-VK.image.texel_view_compatible*
Components: Vulkan
Google bug:
139193497
VK-GL-CTS issue: 1920
Change-Id: Ib8db61808db5f9391a54b7722f965b6608e7e694
Jarred Davies [Fri, 13 Sep 2019 17:24:55 +0000 (18:24 +0100)]
Fix depth store flag in seperate_channels tests
Depth wasn't being stored despite being used.
Affects:
dEQP-VK.renderpass*.suballocation.subpass_dependencies.separate_channels.*
Components: Vulkan
VK-GL-CTS Issue: 2002
Change-Id: Ib2c678dcaef1f0c87756424c23057fb1df1c311e
(cherry picked from commit
f5e267274daff5f11ad8e18f81d0abdbc064043d)
Jeff Bolz [Fri, 13 Sep 2019 19:57:48 +0000 (14:57 -0500)]
Initialize output buffer in fragment_shader_interlock tests
In discard tests, not all output elements are written by the shader.
Clear the output buffer to zero to match what the test expects. The
output image was already being cleared.
Components: Vulkan
VK-GL-CTS issue: 2004
Affects: dEQP-VK.fragment_shader_interlock.*
Change-Id: Ie1049765ec4b7187b39e3d46261e9abef9f5104d
(cherry picked from commit
7b1cb5b16f44bd9598a2bc4726e78f7c13c84ea7)
Jari Komppa [Tue, 17 Sep 2019 08:27:59 +0000 (11:27 +0300)]
Add build option for amber to use shared C runtime
Adding build option for Amber to avoid C runtime conflicts with CTS
Affects: None
Components: Vulkan, Framework
VK-GL-CTS issue: 2001
Change-Id: Ie9f9d8efee887996de843e545b808ff200e5103a
Piers Daniell [Tue, 10 Sep 2019 22:33:58 +0000 (16:33 -0600)]
Increase the sleep measurement tolerance to 100ms
The calibration_test works by measuring the "before"
device time, sleeping the thread for 200ms, and then
measuring the "after" device time. It then checks
the "after"-"before" delta is not more than 200ms
plus/minus 10ms.
This 10ms is too short for many systems and may
result in false failures. If the system is heavily
loaded the thread may sleep for more than 200ms.
Increasing the tolerance to 100ms appears to
eliminate the false failure I've been seeing.
Affects:
dEQP-VK.pipeline.timestamp.calibrated.calibration_test
Components: Vulkan
VK-GL-CTS issue: 1990
Change-Id: Ifc7f877daf8e361e39b3cd9ee447445529fd01d7
Gary Sweet [Wed, 11 Sep 2019 10:44:27 +0000 (11:44 +0100)]
Require standardSampleLocations for imageless fb resolve tests
The resolve tests require known sample locations in order to check
the results. If standardSampleLocations is not supported, report
these tests as unsupported.
Affects: dEQP-VK.imageless_framebuffer.*
Components: Vulkan
VK-GL-CTS issue: 1987
Change-Id: I4dbec37df8606ecb994d3b343dee42c5dee6738d
Alexander Galazin [Thu, 12 Sep 2019 17:26:06 +0000 (18:26 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I3b42845035fc496956deb9880ae222aa6eea1ad4
Alexander Galazin [Thu, 12 Sep 2019 16:13:36 +0000 (17:13 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: Ida04f504ce53ffeba95b59731cf9d0dd10e63896
Ben Clayton [Wed, 4 Sep 2019 15:52:07 +0000 (16:52 +0100)]
vktAmberTestCase: Bump recipe timeout to 10 minutes.
dEQP already provides mechanisms for timeouts - we don't need to rely
on additional timeouts inside amber.
Worse still, if the timeout in amber is actually hit, Vulkan objects
are destructed while the commands are still queued, which can
cause crashes instead of a clean test failure.
Components: Vulkan
VK-GL-CTS Issue: 1971
Affects:
dEQP-VK.rasterization.provoking_vertex.*
dEQP-VK.graphicsfuzz.*
dEQP-VK.pipeline.vertex_only.*
dEQP-VK.spirv_assembly.instruction.compute.ptr_access_chain.*
dEQP-VK.spirv_assembly.instruction.compute.signed_int_compare.*
Change-Id: I3a2e1b1f2796af8eea7e26a8de27e8fc362b9653
Ben Clayton [Wed, 4 Sep 2019 15:46:49 +0000 (16:46 +0100)]
Update amber to
62ef3e4e.
This includes changes that allow us to specify the default
test timeout value.
Components: Vulkan
VK-GL-CTS Issue: 1971
Affects:
dEQP-VK.rasterization.provoking_vertex.*
dEQP-VK.graphicsfuzz.*
dEQP-VK.pipeline.vertex_only.*
dEQP-VK.spirv_assembly.instruction.compute.ptr_access_chain.*
dEQP-VK.spirv_assembly.instruction.compute.signed_int_compare.*
Change-Id: I099c79214ca441f2d0bd31cb8101a7dec872b4bd
John Anthony [Sun, 8 Sep 2019 14:25:48 +0000 (16:25 +0200)]
Use 4 samples for imageless framebuffer resolve tests
Change imageless framebuffer resolve tests to use sample count 4 instead
of 2 for multisample attachments, since 4 is required to be supported,
while 2 is optional.
Affects: dEQP-VK.imageless_framebuffer.*resolve
Components: Vulkan
VK-GL-CTS Issue: 1981
Change-Id: I781b64497ae689ea83609476810207e92cf2d9f6
Stephen Gallimore [Thu, 18 Jul 2019 16:48:41 +0000 (17:48 +0100)]
Correct handling of independentResolveNone
Some depth/stencil resolve tests are incorrectly reported
as unsupported, when the device's supported features include
independentResolveNone but not independentResolve.
Affects:
dEQP-VK.renderpass2.depth_stencil_resolve.*
VK-GL-CTS Issue: 1882
Components: Vulkan
Change-Id: I51f3fbf1447084a052e8f57a5726435f7947384e
Chris Forbes [Thu, 29 Aug 2019 18:22:26 +0000 (11:22 -0700)]
Check whether the underlying format is supported in format_reinterpret tests
Affects: dEQP-VK.image.*
VK-GL-CTS Issue: 1969
Change-Id: I4e78351aa8746ebd2f2ea69980f747ded508802b
Alexander Galazin [Fri, 6 Sep 2019 12:27:23 +0000 (14:27 +0200)]
Whitelist Vulkan CTS 1.1.5.1
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: I8fe5d5d033e2c236e1556e100e44d7020f1066a1
Alexander Galazin [Thu, 5 Sep 2019 15:18:55 +0000 (17:18 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I9127426326658bfa984eb90837e731d8a26139c1
Alexander Galazin [Thu, 5 Sep 2019 15:17:32 +0000 (17:17 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: Ia899f8486ce88f6fdb54cfb070a7026b815bb25b
Chris Forbes [Wed, 14 Aug 2019 02:46:32 +0000 (19:46 -0700)]
Avoid timeouts in dEQP-VK.api.device_init.create_instance_device_intentional_alloc_fail
Components: Vulkan
Affects: dEQP-VK.api.device_init.create_instance_device_intentional_alloc_fail
VK-GL-CTS Issue: 1919
Google bug: b/
139391065
Change-Id: Id5f20ef22147431aef2eabb97f2c7ef5171ed2ae
Matthew Netsch [Tue, 27 Aug 2019 19:30:31 +0000 (15:30 -0400)]
Fixes binding_model tests check for shaderInt64
Components: Vulkan
VK-GL-CTS Issue: 1956
Affects:
dEQP-VK.binding_model.buffer_device_address.*.convert.*
Change-Id: I36d71e75eb3767d2f94ef260436b8c036f0c4ea1
Alexander Galazin [Fri, 30 Aug 2019 09:24:03 +0000 (11:24 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I00f17a688d8b0b2e6c13cab41f9db2f1f853ec8b
Chris Forbes [Thu, 29 Aug 2019 16:59:43 +0000 (09:59 -0700)]
Fix uniformBufferStandardLayout enforcement to match spec
This extension isn't part of 1.1 -- the spec language was just unclear
if you were looking at the output. The spec has been fixed in
https://gitlab.khronos.org/vulkan/vulkan/commit/
aa98ba6f89b9ea707d7efc0c8f71dd82ac9ffb60
Affects: dEQP-VK.api.info.device.mandatory_features
VK-GL-CTS Issue: 1966
Change-Id: I321730f747200036a3d635245bf978eb49b56c2c
Alexander Galazin [Thu, 29 Aug 2019 06:04:01 +0000 (08:04 +0200)]
Use enumerateDeviceExtensionProperties in mandatory features
Affects: dEQP-VK.api.info.device.mandatory_features
Components: Vulkan
VK-GL-CTS issue: 1966
Change-Id: I4d72da3a36e6d31ac4025ff2b25fc3b83fdc20d3
Matthew Netsch [Wed, 28 Aug 2019 15:05:25 +0000 (11:05 -0400)]
Fixes sync test shader instance counts
Tests incorrectly required implementations to
execute only 1 vs instance per vertex.
Components: Vulkan
VK-GL-CTS Issue: 1958
Affects:
dEQP-VK.synchronization.op.*.write_indirect_buffer*
Change-Id: I17e42658706712a4f9d07931ac234c1e1807d693
Alexander Galazin [Fri, 30 Aug 2019 08:42:04 +0000 (10:42 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I3a118287f4387c798fb2beb82113029308f0762b
Matthew Netsch [Wed, 28 Aug 2019 16:31:19 +0000 (12:31 -0400)]
Adds geometry shader check for test
Components: Vulkan
VK-GL-CTS Issue: 1900
Affects:
dEQP-VK.query_pool.statistics_query.input_assembly*.primary.*adjacency
Change-Id: I6aeb72143231d59711cb1d6ea98bc2cc0264bc84
Matthew Netsch [Wed, 28 Aug 2019 16:17:00 +0000 (12:17 -0400)]
Reduce long execution time in spirv_asm float16
Components: Vulkan
VK-GL-CTS Issue: 1959
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.float16.*
Change-Id: Iddfa825ffe5bf32607043eb31b517dbba1ff62dc
Yanjun Zhang [Wed, 28 Aug 2019 00:35:26 +0000 (17:35 -0700)]
Fix pixels_resolution computation in GLSL shader
branch: vulkan-cts-1.1.3
Components: Vulkan
Affects:
dEQP-VK.image.texel_view_compatible.graphic.extended.*
VK-GL-CTS issue: 1890
Change-Id: I4aa3270545e0b873bdc8baacaf1fc3947004d003
Alexander Galazin [Thu, 29 Aug 2019 12:06:21 +0000 (14:06 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: Ic4d2bda684057e57ae78e3894e646a8b4653da74
Alexander Galazin [Thu, 29 Aug 2019 10:34:59 +0000 (12:34 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I75388239129fe489793729297b9aff59da4d77da
Lingfeng Yang [Wed, 21 Aug 2019 15:45:10 +0000 (08:45 -0700)]
external fence tests: account for sync fd -1 in multiple export case
Spec allows for sync fd == -1 to be returned from vkGetFenceFdKHR
as a signal that the fence is signaled.
VK-GL-CTS issue: 1937
Components: Vulkan
Affects:
dEQP-VK.api.external.fence.sync_fd.export_multiple_times_temporary
Change-Id: I7391d180bdc1a585c7b57930fc1750d13f7151e1
(cherry picked from commit
e266d2f1ee82d20c06c3c48064f60ac4fecd8b1d)
Slawomir Cygan [Fri, 23 Aug 2019 12:33:19 +0000 (14:33 +0200)]
Explicitly use -A Win32 platform in CMake Visual Studio 2019 builds
There is a new CMake switch "-A" for selecting a platform in
Visual Studion CMake generators.
It was set only for 64-bit builds (to x64), however it seems it does not
default to Win32 - so it must be set also for 32-bit builds.
Components: Framework
VK-GL-CTS Issue: 1950
Change-Id: I4d0e9f1a9c8dd0f3060e138f613c8e5326b6fc9f
Matthew Netsch [Mon, 26 Aug 2019 16:26:12 +0000 (12:26 -0400)]
Adds cubic filter to allowed ycbcr format features
Components: Vulkan
VK-GL-CTS Issue: 1938
Affects:
dEQP-VK.api.info.format_properties.*
Change-Id: I9f32b902820d7a50db9ae51a5ba61f8bab9042ba
John Anthony [Thu, 11 Jul 2019 14:54:59 +0000 (16:54 +0200)]
Check supported features and properties for transform feedback tests
Builtin tests using shaderClipDistance and/or shaderCullDistance should
check if the features they need are supported. BackwardDependency test
should check if transformFeedbackDraw is supported.
Affects:
- dEQP-VK.transform_feedback.simple.xfb_clipdistance_*
- dEQP-VK.transform_feedback.simple.xfb_culldistance_*
- dEQP-VK.transform_feedback.simple.xfb_clip_and_cull_*
- dEQP-VK.transform_feedback.simple.backward_dependency
Components: Vulkan
VK-GL-CTS issue: 1934
Change-Id: I76b22a506ba608d3e3f4ea5586c74b0b7ca1066a
Matthew Netsch [Wed, 21 Aug 2019 15:43:35 +0000 (11:43 -0400)]
Fixes stencil load/store flags in renderpass tests
Components: Vulkan
VK-GL-CTS Issue: 1939
Affects:
dEQP-VK.renderpass*.simple.*stencil
Change-Id: I042c08b9bee6ba00ea3237e24f3fb6b2f1aebd9b
Chris Forbes [Thu, 29 Aug 2019 02:13:38 +0000 (19:13 -0700)]
Have just one definition of AmberTestCase
There were two -- an empty stub in the util header, and the real one.
This made it impossible to actually use the full API to set
feature/extension requirements, etc.
Instead, I have forward-declared the Amber Recipe type so that including
vktAmberTestCase.hpp does not involve pulling in Amber headers.
Add geometryShader feature requirement to provoking vertex Amber tests,
allowing them to skip properly on devices which do not support geometry
shaders.
Affects: dEQP-VK.rasterization.provoking_vertex.*
VK-GL-CTS Issue: 1964
Change-Id: Id6d1068c45b2aacc29d07527edd53d65953c49a3
Chris Forbes [Thu, 29 Aug 2019 00:44:47 +0000 (17:44 -0700)]
Fix AmberTestCase feature mapping for geometryShader
This was accidentally wired up to tessellationShader instead
VK-GL-CTS Issue: 1963
Change-Id: Id11fd09cf5c0c1353d3df4ecdcbe95bdfa9fa397
Alexander Galazin [Tue, 27 Aug 2019 07:13:13 +0000 (09:13 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I99471c0d878e8abb8c01d7b43a71a9b3e7fbe285
Jeff Bolz [Thu, 16 May 2019 04:27:53 +0000 (23:27 -0500)]
VK_EXT_fragment_shader_interlock tests
Components: Vulkan
New Tests: dEQP-VK.fragment_shader_interlock.*
VK-GL-CTS issue: 1856
Change-Id: I0246519ac51fcb2eb30fa264b02eb1f30c763e24
(cherry picked from commit
36005ceedd19e39bd11972dd39c419521767dac6)
Jeff Bolz [Sun, 2 Jun 2019 04:11:00 +0000 (23:11 -0500)]
New tests for VK_EXT_shader_demote_to_helper_invocation
Based on dEQP-VK.glsl.discard.*
New Tests: dEQP-VK.glsl.demote.*
Components: Vulkan
Change-Id: I9c2346592cac51cfe2de10f9586c4790c04766b6
(cherry picked from commit
529b996513d092334de3dabd4b3e44031201bdd9)
Alexander Galazin [Mon, 26 Aug 2019 12:15:18 +0000 (14:15 +0200)]
Whitelist 1.1.4.3 and 1.1.3.3 versions
Affects: dEQP-VK.api.driver_properties.properties
Components: Vulkan
Change-Id: Ia071c4983326e9e47a58d268264e568bea777c1c
Piers Daniell [Wed, 24 Jul 2019 05:07:47 +0000 (23:07 -0600)]
Test coverage for VK_EXT_index_type_uint8
Adds coverage for VK_EXT_index_type_uint8 by adding
a new VK_INDEX_TYPE_UINT8_EXT variant to the existing
input_assembly tests. The coverage includes drawing
all the primitive topologies with uint8 indices,
and also primitive restart.
Affects:
dEQP-VK.pipeline.input_assembly.*
Change-Id: I939c1e0d2c3d4fcfd4386b8b4e419a8ca0e73413
Components: Vulkan
(cherry picked from commit
e0e648699ac9279650486609cf16ec6e10d73042)
Alexander Galazin [Thu, 22 Aug 2019 15:46:27 +0000 (17:46 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: If70c0a43c7453bdea1cfe4666be9bdc946108a31
Alexander Galazin [Thu, 22 Aug 2019 11:42:23 +0000 (13:42 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I4059d84b79a3ad4504f436fa39dc2cddb294f8d7
Matthew Netsch [Wed, 14 Aug 2019 11:08:32 +0000 (16:38 +0530)]
Split compute workload into multiple submissions
Reduces workload per submission
Components: Vulkan
VK-GL-CTS Issue: 1751
Affects:
dEQP-VK.memory_model.message_passing.*
Change-Id: Ia9e9b63851b18ae1d5c1b65426ee864d760bf87c
Yahan Zhou [Wed, 7 Aug 2019 19:44:50 +0000 (12:44 -0700)]
1d_image: basic: compute: texel_view_compatible: set size.y to 1
1d images need to have size.y=1. Otherwise Vulkan validation layer will
complain.
Affects:
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image*
Components: Vulkan
VK-GL-CTS issue: 1920
Change-Id: I0dd24d612aafb416a74b5eb6f16bb55c76175a0f
(cherry picked from commit
fe76a662df108542ff27e1c4f5a83077b54444c4)
Piers Daniell [Tue, 13 Aug 2019 22:11:23 +0000 (16:11 -0600)]
Fix incorrect layout transition in render pass
For the dEQP-VK.device_group.* tests the renderImage was
created with an UNDEFINED layout and then explicitly
transitioned to COLOR_ATTACHMENT_OPTIMAL during the test
initialization. Then the renderPass was created using the
makeRenderPass() utility function which assumed the
image was in the UNDEFINED state. This caused the
image to be transitioned again from UNDEFINED
to COLOR_ATTACHMENT_OPTIMAL at begin render pass time,
which might modify any valid image data.
The solution is to fix the render pass creation
to indicate that the renderImage is already in the
COLOR_ATTACHMENT_OPTIMAL layout.
Affects:
dEQP-VK.device_group.*
VK-GL-CTS issue: 1922
Change-Id: I5e1dff19eb854af9651615a7318379a318b8c273
Components: Vulkan
Panagiotis Apostolou [Thu, 25 Jul 2019 10:29:18 +0000 (12:29 +0200)]
Add pipeline barriers flushing buffer data to host
This commit adds a few buffer pipeline barriers whose purpose is to flush
gpu caches, making the buffer data visible to the host.
Affects:
dEQP-VK.pipeline.push_constant.compute_pipeline.simple_test
dEQP-VK.glsl.builtin.precision.*
dEQP-VK.glsl.builtin.function.*
dEQP-VK.api.command_buffers.record_simul_use_secondary_one_primary
dEQP-VK.synchronization.op.single_queue.*
dEQP-VK.query_pool.occlusion_query.*
Components: Vulkan
VK-GL-CTS issue: 1898
Change-Id: Ic6a467b4d1db6cebebf34c8d386e519016fc3fe9
Jason Ekstrand [Tue, 21 May 2019 23:35:19 +0000 (18:35 -0500)]
VK_KHR_pipeline_executable_properties tests
Components: Vulkan
New Tests: dEQP-VK.pipeline.executable_properties.*
Change-Id: I5534d945e65e645b8e43c23008b887797f4a5b85
Alexander Galazin [Wed, 14 Aug 2019 14:11:55 +0000 (16:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I9cc0f3b31193377219058dce043d7b8a929b9eea
Alexander Galazin [Wed, 14 Aug 2019 12:04:45 +0000 (14:04 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I6c972fa2e2028e4f813ab96eb565c93c440faf9d
Alexander Galazin [Wed, 14 Aug 2019 11:52:47 +0000 (13:52 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I7f00708e05e1cf20c6439e52287d21eacf32ca01
Hsin-Hsiao Lin [Thu, 25 Jul 2019 07:13:34 +0000 (09:13 +0200)]
Provide a highp variable to MAKE_HIGH_BALLOT_RESULT
The MAKE_HIGH_BALLOT_RESULT macro assumes the input is 32bit.
Given a mediump variable, ex: gl_SubgroupSize, would produce an
undefined result when the input value is >= 16 and the computation
is in 16 bits.
Provide a highp input would ensure the computation is in 32 bits.
Affects:
dEQP-VK.subgroups.ballot_other.*
Components: vulkan
VK-GL-CTS issue: 1894
Change-Id: I22987f20be3d08444c52cb722fc23494777a5636
Fabio [Thu, 25 Jul 2019 15:08:16 +0000 (17:08 +0200)]
Update device_group test to ignore VK_SUBOPTIMAL_KHR
The transform used to create the swapchain does not match the
surface rotation. This causes vkQueuePresentKHR to return
VK_SUBOPTIMAL_KHR. This return code can be ignored.
Components: Vulkan
VK-GL-CTS Issue: 1899
Affects: dEQP-VK.wsi.android.swapchain.render.device_group
Change-Id: I27d8e61007dd049b8e9cc532918056b8493a9b52
Stephen Gallimore [Wed, 31 Jul 2019 15:24:57 +0000 (16:24 +0100)]
Add result buffer invalidates to depth stencil resolve tests
Components: Vulkan
VK-GL-CTS issue: 1907
Affects: dEQP-VK.renderpass2.depth_stencil_resolve.*
Change-Id: I90920f6005b0d6a72a78c588f4c3abec81826516
Chris Forbes [Sun, 28 Jul 2019 20:34:13 +0000 (13:34 -0700)]
Add missing checks for sampleShading feature
These cases were missed in the previous pass as they were masked by the
(correct) check for fragmentStoresAndAtomics.
Components: Vulkan
Affects: dEQP-VK.glsl.builtin_var.*
VK-GL-CTS Issue: 1901
Change-Id: I4d19c5075d14f60ead4c6df6370fffc870cde68a
Martin Freebody [Mon, 22 Jul 2019 13:30:24 +0000 (14:30 +0100)]
Add barrier to access chain workgroup tests
These tests can complete with a failure to match expected
result in the last array element due to a race condition
with the parallel work-items.
The first work-item should set the last array element to 0
before a function to read the last array element is executed
on a parallel work-item.
Without the barrier it's possible on occasional test runs
to read uninitialised memory into the last array element.
Components: Vulkan
VK-GL-CTS issue: 1893
Affects:
dEQP-VK.spirv_assembly.instruction.compute.ptr_access_chain.*
Change-Id: I072299f7995b8f65e26195cfddd12f49cffcc9ff
Slawomir Cygan [Tue, 6 Aug 2019 19:53:18 +0000 (21:53 +0200)]
Fix wrong image usage flags in external memory info tests
According to spec:
"If usage includes VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, usage must
also contain at least one of VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT,
VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, or
VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT."
This change adds adds COLOR, DEPTH or INPUT usage bit alongside TRANSIENT usage.
VK-GL-CTS Issue: 1913
Components: Vulkan
Change-Id: If7d4b3889f9b8709af09d448fdb24e61d493ebde
Affects: dEQP-VK.api.external.memory*info
Ari Suonpaa [Tue, 23 Apr 2019 11:57:47 +0000 (14:57 +0300)]
Make random number usage platform independent
Generating multiple random numbers in argument
list can happen in different order depending on
implementation. This change makes these happen
in the same order with all implementations.
Affects:
dEQP-VK.api.granularity.*
dEQP-VK.draw.basic_draw.*
dEQP-VK.protected_memory.*
dEQP-VK.glsl.builtin.function.common.*
dEQP-VK.glsl.builtin.function.pack_unpack.*
dEQP-VK.glsl.texture_gather.*
dEQP-VK.spirv_assembly.*
dEQP-GLES3*.functional.shaders.builtin_functions.common.*
Components: Vulkan, OpenGL, Framework
(cherry picked from commit
0106f01209fe7abb7f4daf029318a1de17844c48)
VK-GL-CTS issue: 1591
Change-Id: Iaaff9625fd331ed7184efd50b89fc835c701ac6f
Arkadiusz Sarwa [Wed, 24 Jul 2019 10:41:42 +0000 (12:41 +0200)]
Fixes 64bit random values for 32bit CTS build
In 32bit build a 64bit random value is assigned
to 32bit value what cause different path of execution.
Components: Vulkan
VK-GL-CTS Issue: 1895
Affects:
dEQP-VK.memory.pipeline_barrier.all.*
Change-Id: I1f51b8b30be9a70ae82326609bc382431b8f3b80
Alexander Galazin [Wed, 24 Jul 2019 06:56:55 +0000 (08:56 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I1e2517f737ee503fdd0f50c517270e35ed25b203
Alexander Galazin [Tue, 23 Jul 2019 18:02:50 +0000 (20:02 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I4ed438d3edefade78a1602957d3d26fa777175c2
Tony Zlatinski [Fri, 19 Jul 2019 00:04:44 +0000 (19:04 -0500)]
Fix command line parameters processing of TestLog
Change
7b7791a40f for issue 1666 has added functionality
to TestLog by adding extra parameters to the constructor.
The change, however, has patchied only one of the uses of the
class, breaking the other 3 uses of it. This has caused the
log flags to be wrong, and the new functionality introduced
by
7b7791a40f to not work, as expected.
This change fixes the rest of the locations and is adding one
more constructor for the TestLog class targeted for use by Android.
Components: Framework
VK-GL-CTS issue: 1887
Change-Id: I8d52d40ee5dffb120b8a4945b0f865c8f3e7b7dd
Panagiotis Apostolou [Fri, 12 Jul 2019 09:25:43 +0000 (11:25 +0200)]
Pipeline barriers flushing buffer data to host
Adds pipeline barriers after vkCmdDispatch which essentially flushes gpu
caches and the buffer data becomes visible to the host.
Affects:
dEQP-VK.spirv_assembly.instruction.compute.*
dEQP-VK.spirv_assembly.instruction.graphics.opspecconstantop_opquantize.*
Components: Vulkan
VK-GL-CTS issue: 1880
Change-Id: Ib99a4ed9a1a2d57b286dea2251b3bc4a67002dfb
Alexander Galazin [Tue, 16 Jul 2019 16:34:23 +0000 (18:34 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: Ic5126bd75b2616bdd9525d65eca95dc170475ced
Igor Ostrowski [Mon, 15 Apr 2019 07:56:39 +0000 (09:56 +0200)]
Add compatible memory type check for given handle
Affects:
dEQP-VK.synchronization.win32_keyed_mutex.*
Components: Vulkan
VK-GL-CTS issue: 1866
Change-Id: I982bcd2e2ac15aa5cae403fcec859b28bcaf7999
Slawomir Cygan [Fri, 12 Jul 2019 13:02:16 +0000 (15:02 +0200)]
Fix image layouts in descriptor indexing tests
This is a fix for regression introduced in
4301d73b3
- in fact this is a partial revert of that change.
After
4301d73b3, the current image layout (READ_ONLY_OPTIMAL) was
different than image layout used in descriptor set bindings
(GENERAL), what is invalid.
As some of these descriptor set binding are used for STORAGE_IMAGEs,
which require images in GENERAL layout, the simplest fix was to revert
back to using GENERAL layouts.
Components: Vulkan
VK-GL-CTS Issue: 1881
Change-Id: Idac940135bafe6be6e456d0ec554d5cc3c3fc8e7
Affects: dEQP-VK.descriptor_indexing.*
Alexander Galazin [Fri, 12 Jul 2019 08:56:38 +0000 (10:56 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I3ee381095ae5e6ffe4c3d581fd4de06cf1f7c8ec
Alexander Galazin [Fri, 12 Jul 2019 07:47:09 +0000 (09:47 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I01ed4686a43801a91df0459b821fd047f4858940
Boris Zanin [Mon, 8 Jul 2019 13:27:50 +0000 (15:27 +0200)]
Remove conformance version test from Android
Removes conformance version tests from android CTS.
Split tests designed to validate VK_KHR_driver_properties
into several smaller tests.
Add three more records into knownDriverIds.
Add:
* dEQP-VK.api.driver_properties.*
Remove:
* dEQP-VK.api.driver_properties
Components: vulkan
VK-GL-CTS issue: 1839
Change-Id: I9b591778c9833fd890c9af46cb87d9f5eb695dbd
Mike Byrne [Mon, 1 Jul 2019 10:53:36 +0000 (11:53 +0100)]
Fix Android WSI incremental present image tests
The pipeline for Android WSI incremental present image tests was not
provided with a valid scissor rect. This caused the tests to perform
incorrectly (and violates Vulkan requirements).
Affects: dEQP-VK.wsi.android.incremental_present.*
VK-GL-CTS Issue: 1867
Change-Id: I257ab8ae59a13e24fb299b6b47e925f3c105aecb
Components: Vulkan, AOSP
Alex Walters [Thu, 11 Jul 2019 14:17:53 +0000 (15:17 +0100)]
Exclude dEQP-VK.ssbo.layout.random.scalar.75
Remove dEQP-VK.ssbo.layout.random.scalar.75 from mustpass, added to
excluded test list. The shader length is quite extreme resulting in an
overly high runtime where certain devices can easily hit the watchdog.
Affects:
dEQP-VK.ssbo.layout.random.scalar.75
Components: Vulkan
VK-GL-CTS Issue: 1829
Change-Id: I57627fc895ed4a0e023e9f81e0cc6cdc203d2485
Alexander Galazin [Wed, 10 Jul 2019 09:12:51 +0000 (11:12 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I34d0c949c112eb56427e54f1b0f34f730a1d0b27
Slawomir Cygan [Tue, 9 Jul 2019 10:19:26 +0000 (12:19 +0200)]
Add support for building with Visual Studio 2019
Components: Framework
Change-Id: I52c92750e9e2874b86fd7bceea0070ad609909c1
Boris Zanin [Mon, 17 Jun 2019 07:49:36 +0000 (09:49 +0200)]
Fix VK_KHR_imageless_framebuffer tests
Formats are referred to by a pointer to a variable allocated on
stack, which will become invalid before its usage.
Use permanent variable and pointer to it.
Update tests:
* dEQP-VK.imageless_framebuffer.*
Components: Vulkan
VK-GL-CTS issue: 1477
Change-Id: Ic8ab76ec576168fd0bfc3aef9a08f6bab2392584
(cherry picked from commit
92c1b600fad9925a305e346b7de5fa5b6587008e)
Boris Zanin [Fri, 11 Jan 2019 13:08:43 +0000 (14:08 +0100)]
Add tests for VK_KHR_imageless_framebuffer
Implement imageless framebuffer extension tests.
Add tests:
* dEQP-VK.imageless_framebuffer.color
* dEQP-VK.imageless_framebuffer.depth_stencil
* dEQP-VK.imageless_framebuffer.color_resolve
* dEQP-VK.imageless_framebuffer.depth_stencil_resolve
* dEQP-VK.imageless_framebuffer.multisubpass
Components: Vulkan
VK-GL-CTS issue: 1477
Change-Id: I2baa0614369a98afe2c028788824f50505bb291b
(cherry picked from commit
656826a55cb17850a0f33dacf671490715020efa)
Alexander Galazin [Fri, 5 Jul 2019 09:36:02 +0000 (11:36 +0200)]
Whitelist Vulkan CTS 1.1.5.0
Affects: dEQP-VK.api.driver_properties.properties
Components: Vulkan
Change-Id: I5493e4a3cf0007c761a339d4e281d3fd94724023
Juan A. Suarez Romero [Tue, 2 Jul 2019 13:55:01 +0000 (15:55 +0200)]
SPIR-V assembly tests require Invocations in Geometry shaders
Validation layers are complaining about the lack of Invocation count in
several of the geometry spirv assembly tests.
Affects: dEQP-VK.spirv_assembly.instruction.graphics.*_geom
Components: Vulkan
VK-GL-CTS issue: 1862
Change-Id: I3c3f44574bef0ad2d61b27f0b3d94f9e24924a92
Tom Cooper [Thu, 27 Jun 2019 16:14:22 +0000 (17:14 +0100)]
Allows initialisation of float16 values for comparison tests by casting.
Affects:
dEQP-VK.glsl.builtin.precision_fp16_storage32b.*
Components: Vulkan
VK-GL-CTS issue: 1860
Change-Id: I0e211dacf31a91d2cff2912440d4283bb5a2e492
Graeme Leese [Thu, 27 Jun 2019 10:31:36 +0000 (11:31 +0100)]
Fix more 16bit denorms in precision tests
The denorm code that was fixed in: https://gerrit.khronos.org/#/c/4135/
still persisted in a different function that I hadn't noticed. Update it
there as well.
Because this function is being called on fixed floats, rather than on
random ones, I don't think the brokenness of the old code will cause a
practical problem, but the new version is simpler and more correct, so
I've changed it anyway.
Components: Vulkan
VK-GL-CTS issue: 1843
Affects: dEQP-VK.glsl.builtin.precision_fp16_storage32b.*
Change-Id: I6d6d7f8678f6edf41255e194650648c865b71e76
Graeme Leese [Fri, 28 Jun 2019 08:36:22 +0000 (09:36 +0100)]
Cast invocation ID correctly in allequal tests
The gl_SubgroupInvocationID was not being cast to the appropriate type
in the vote.allequal tests, so every type was testing the uint version.
The ARB extension tests worked around this by specifically casting to
bool because there is no uint version in the ARB extension. This version
casts the invocation ID to the appropriate type for the test. This part
of the test is skipped for boolean types because there may not be an
invocation with ID 0, so the results may all be equal ( == true),
contrary to the test's expectation.
Component: Vulkan
VK-GL-CTS issue: 1845
Affects: dEQP-VK.subgroups.vote.*
Change-Id: I98a01fa2398cc4cdc18125af2cc64f59a5d559ca
Alexander Galazin [Thu, 4 Jul 2019 10:11:42 +0000 (12:11 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/master
Change-Id: I02390abaef46d2859360a3757a7e14dd830853ae
Boris Zanin [Wed, 19 Jun 2019 16:39:31 +0000 (18:39 +0200)]
Forbid non-ascii symbols in source files
Enforce usage of ascii symbols only by adding one more check
into check-all target. Adds check_encdoing.py file into scripts.
More details please see in the issue.
Components: Framework
VK-GL-CTS issue: 1836
Change-Id: I702d1338bf1ee7180b87e51151b26a5ac17afbdd
Toni Merilehti [Wed, 5 Jun 2019 13:05:10 +0000 (16:05 +0300)]
Test image load/store with packed formats
This CL adds image load/store tests for the packed formats
requiring the StorageImageExtendedFormats SPIR-V capability.
The thresholds in the result verification are now based
on the channel class and bit depths of the components.
The shader generation is modified to store also negative
values on signed formats.
New tests:
dEQP-VK.image.store.*pack32*
dEQP-VK.image.load_store.*pack32*
dEQP-VK.image.format_reinterpret.*pack32*
Affects:
dEQP-VK.image.store.*
dEQP-VK.image.load_store.*
dEQP-VK.image.format_reinterpret.*
dEQP-VK.image.qualifiers.restrict.*
Components: Framework, Vulkan
VK-GL-CTS issue: 1814
Change-Id: Ia2d061dbfd9c19ade8057398dd78692b5a28c029
Ricardo Garcia [Mon, 24 Jun 2019 09:22:56 +0000 (11:22 +0200)]
Enable strong-typed DE_LENGTH_OF_ARRAY for every compiler
The C++ strong-typed version of DE_LENGTH_OF_ARRAY should work with
every C++ compiler. This commit removes the restriction of being used
only with the Microsoft compiler.
Components: Framework
VK-GL-CTS issue: 1848
Change-Id: Id28c02ab4dfecefa84093578afca0da50b0bdd65
Alexander Galazin [Thu, 4 Jul 2019 07:34:10 +0000 (09:34 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: Id458e912df4bb49e821279d353b056d4baaac114
Yiwei Zhang [Sat, 22 Jun 2019 02:14:25 +0000 (19:14 -0700)]
Split shared_presentable_image tests into more dimensions to avoid timeout
Components: Vulkan
VK-GL-CTS Issue: 1842
Affects: dEQP-VK.wsi.*.shared_presentable_image.*
Change-Id: I957c106b756fab4be5b17f7d0a6d9ad2a14fce75
Mike Byrne [Mon, 24 Jun 2019 06:44:23 +0000 (07:44 +0100)]
Fix Android WSI shared presentable image test OOM
The dEQP-VK.wsi.android.shared_presentable_image.scale_down tests fail
intermittently with OOM errors. A simliar fix as implemented for
WSI incremental presentable image tests resolves this.
Affects: dEQP-VK.wsi.android.shared_presentable_image.scale_down.*
Components: Vulkan, AOSP
VK-GL-CTS Issue: 1858
Change-Id: Iee7a31560e46b6c449d14ec6e7c75d7406ae6d82
Mike Byrne [Tue, 25 Jun 2019 13:39:53 +0000 (14:39 +0100)]
Fix Android WSI shared presentable image tests
The pipeline for Android WSI shared presentable image tests was not
provided with a valid scissor rect. This caused the tests to perform
incorrectly (and violates Vulkan requirements).
Affects:
dEQP-VK.wsi.android.shared_presentable_image.scale_down.demand
dEQP-VK.wsi.android.shared_presentable_image.scale_down.continuous
VK-GL-CTS Issue: 1857
Change-Id: I060c12d7192945ecbe01dfcc8e89c03874b9b218
Components: Vulkan, AOSP