Alexander Galazin [Thu, 13 Feb 2020 12:15:06 +0000 (13:15 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I876198ffd8f48fee637feae92ded3806cffd7008
John Anthony [Wed, 29 Jan 2020 15:33:53 +0000 (16:33 +0100)]
Only require geometryStreams feature in XFB query tests if needed
Change transform feedback query tests to only require the
geometryStreams feature for test cases using stream ID != 0.
Affects:
- dEQP-VK.transform_feedback.simple.query_0_*
- dEQP-VK.transform_feedback.simple.host_query_reset_0_*
Components: Vulkan
VK-GL-CTS Issue: 2197
Change-Id: Id1378f58e6634dd70ad89843e000d047af0ea496
Mikel Garai [Mon, 20 Jan 2020 08:30:53 +0000 (09:30 +0100)]
Fix transform feedback triangle strip verification
Vulkan specifies that the first vertex in a multi vertex primitive is
implementation specific, but the winding must be respected.
This change allows any first vertex as long as the vertices and winding
are correct.
Components: Vulkan
Affects:
dEQP-VK.transform_feedback.simple.triangle_strip_with_adjacency_*
VK-GL-CTS Issue: 2193
Change-Id: I3d195c50a4b3b1f51529014fb97cebef19f872b7
Alexander Galazin [Mon, 13 Jan 2020 14:33:52 +0000 (15:33 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: Ifc85777682563e4ec769d2b32dbb4b3584a649a5
Alexander Galazin [Mon, 13 Jan 2020 12:10:10 +0000 (13:10 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I420bc4aa41a2f7a67434b4f674c3d3aa161dc6c3
Alexander Galazin [Mon, 13 Jan 2020 10:54:20 +0000 (11:54 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: Id9ed312f96fa266a0e3809211b14566ece03e791
Alexander Galazin [Mon, 13 Jan 2020 09:45:56 +0000 (10:45 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: I37d5b18d5980372057827bc4435239be98fd30bc
Alan Baker [Mon, 25 Nov 2019 18:03:36 +0000 (13:03 -0500)]
Fix SPIR-V assembly tests with bad cfgs
* Update SPIR-V assembly tests to not declare a continue target as a
merge block
Component: Vulkan
VK-GL-CTS Issue: 2122
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.switch_block_order.out_of_order*
dEQP-VK.spirv_assembly.instruction.graphics.opphi.out_of_order*
dEQP-VK.spirv_assembly.instruction.graphics.loop.multi_block_loop_construct*
dEQP-VK.spirv_assembly.instruction.graphics.loop.multi_block_continue_construct*
dEQP-VK.spirv_assembly.instruction.graphics.loop.continue*
dEQP-VK.spirv_assembly.instruction.graphics.loop.break*
dEQP-VK.spirv_assembly.instruction.graphics.loop.return*
Change-Id: I370331414aae27b53ed79b448b72581e2352c3d7
Alexander Galazin [Sun, 5 Jan 2020 08:33:03 +0000 (11:33 +0300)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I5ebdf2135fdd096d8d35da3ba7d489270f30eba5
Alexander Galazin [Sun, 5 Jan 2020 07:48:47 +0000 (10:48 +0300)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I51213fc50189215a04c9206a8b805962052235cb
Alexander Galazin [Sun, 5 Jan 2020 06:36:56 +0000 (09:36 +0300)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I2a051b8a36b997c3f904ddd78657de8c1719a53b
Matthew Netsch [Fri, 20 Dec 2019 20:43:04 +0000 (15:43 -0500)]
Adds subgroup ops stage check
Components: Vulkan
VK-GL-CTS Issue: 2084
Affects:
dEQP-VK.memory_model.message_passing.*.subgroup.*
dEQP-VK.memory_model.write_after_read.ext.*.subgroup.*
Change-Id: Ibb820b4d3de1782bc844f3eb32b6e752745e9976
Matthew Netsch [Fri, 4 Oct 2019 15:46:04 +0000 (11:46 -0400)]
Account for VS executing more than once when atomics are used.
Components: Vulkan
Affects: dEQP-VK.glsl.opaque_type_indexing.atomic_counter.*
dEQP-VK.glsl.atomic_operations.*
Change-Id: I15eabf9b47af204fd13370efdc323af141b6b11b
Alexander Galazin [Fri, 20 Dec 2019 12:51:17 +0000 (13:51 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: If326d580f29fd87e9e72e81a11a39e8629d35bb5
Dae Kim [Fri, 13 Dec 2019 09:26:05 +0000 (09:26 +0000)]
Avoid undefined behaviour when calculating subgroup ballot masks
The affected tests are shifting the bits of the last component of the
computed ballot masks by 32. However, the SPIR-V specification
establishes that the result of OpShift* is undefined if `Shift` is
greater than *or equal* to the bit width of the components of `Base`.
Affects:
dEQP-VK.subgroups.ballot_other.*
Components: Vulkan
VK-GL-CTS issue: 2083
Change-Id: I8c9b4373f1429669a40741986916e8d71b7eb573
Alan Baker [Thu, 19 Dec 2019 14:50:54 +0000 (09:50 -0500)]
Fix invalid CFG in SPIR-V 1.4 tests
VK-GL-CTS Issue: 2122
Component: Vulkan
Affected tests:
dEQP-VK.spirv_assembly.instruction.spirv1p4.opptrdiff.variable_pointers_vars_ssbo_2_diff
dEQP-VK.spirv_assembly.instruction.spirv1p4.opptrequal.variable_pointers_ssbo_2_equal
dEQP-VK.spirv_assembly.instruction.spirv1p4.opptrnotequal.variable_pointers_ssbo_2_not_equal
dEQP-VK.spirv_assembly.instruction.spirv1p4.nonwritable.function_nonwritable
dEQP-VK.spirv_assembly.instruction.spirv1p4.nonwritable.private_nonwritable
Change-Id: Ifcdae634224c08be8ebbd7efaa9e63c046acbae5
Alexander Galazin [Tue, 17 Dec 2019 15:29:31 +0000 (16:29 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I8752672f5ba4807bc8e638b117a7c37d5e161d05
Alexander Galazin [Tue, 17 Dec 2019 14:34:21 +0000 (15:34 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I4d9b046396a757d9fce9a0a326b150deb37015ce
Alexander Galazin [Tue, 17 Dec 2019 12:32:46 +0000 (13:32 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: Ia01386a2e8fec477414b8488a7bfa883265c32ec
Alexander Galazin [Tue, 17 Dec 2019 10:58:46 +0000 (11:58 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Iecc5fe7d8f5119a46a78fd7d6f3c3b613c45059d
Paul Thomson [Thu, 5 Dec 2019 18:13:00 +0000 (18:13 +0000)]
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
Victor Khimenko [Tue, 10 Sep 2019 21:25:00 +0000 (23:25 +0200)]
Fix incorrect use of dlopen/dlclose
Function pointers returned by dlsym are retained after dlclose() is
called. If the library is actually unloaded by that dlclose() call, then
calling through those function pointers then triggers undefined
behavior.
Components: Vulkan
Affects: dEQP-VK.api.external.memory.android_hardware_buffer.*
Google Bug: b/
140826027
Change-Id: I1da2d10e97e5567578bf06d768820764882f7126
Arkadiusz Sarwa [Fri, 15 Nov 2019 16:35:24 +0000 (17:35 +0100)]
Fix memory leaks in dEQP-VK.api.invariance.random
Test dEQP-VK.api.invariance.random contains memory leaks.
Change fixes memory leaks.
Components: Vulkan
VK-GL-CTS Issue: 2110
Affects: dEQP-VK.api.invariance.random
Change-Id: I4ccd9d87b69f51da661ca85f10eb347086594aaa
Graeme Leese [Thu, 5 Dec 2019 10:19:01 +0000 (10:19 +0000)]
Fix RGB9E5 encode
The overflow correction was broken and resulted in encoded values being
2x too large.
Components: Framework
VK-GL-CTS issue: 2132
Affects: dEQP-VK.*e5*
Change-Id: Ibcab4c889b044c8668aae3c7a1288b8cda1ff0e6
Alexander Galazin [Thu, 5 Dec 2019 09:35:38 +0000 (10:35 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I379c93b2ba1b05af60dab773496d8fa81ebb7c33
Alexander Galazin [Thu, 5 Dec 2019 08:38:48 +0000 (09:38 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I13e1238c4bfc3cb1366e25def3b081591a8101de
Slawomir Cygan [Fri, 29 Nov 2019 13:06:03 +0000 (14:06 +0100)]
Do the 'from UNDEFINED' layout transition only on the first pass
The test uses multiple submissions, each rendering to a part
of the same render target. Only the first submission should do
the transition 'from' UNDEFINED layout, otherwise each pass (submit)
would invalidate render target contents from previous submits.
Components: Vulkan
VK-GL-CTS Issue: 2131
Change-Id: Ic424e391e0348f6333b50d4c0f4f57d161ec95fb
Affects: dEQP-VK.descriptor_indexing.*
Alexander Galazin [Thu, 5 Dec 2019 07:47:58 +0000 (08:47 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I4d9bef08ce50fbba4d6a61cbba1e3cdb28051543
Yanjun Zhang [Sat, 16 Nov 2019 05:54:57 +0000 (21:54 -0800)]
Add two more formats with proper threshold values.
Need to add two more formats with proper threshold values in
vkApiCopiesAndBlittingTests.cpp: getFormatThreshold() to make
CTS pass on some VSI mobile GPUs.
Affects:
dEQP-VK.api.copy_and_blit.core.blit_image.simple_tests.*
dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.*
dEQP-VK.api.copy_and_blit.dedicated_allocation.blit_image.*
Components: Vulkan
VK-GL-CTS issue: 2112
Change-Id: Ia3a314fd825ed13c44e49720fffffa2dff8f26af
Alexander Galazin [Tue, 3 Dec 2019 20:19:18 +0000 (21:19 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: If4306c39b07180416c2b5187b26ed72ba994b892
Mike Byrne [Mon, 13 May 2019 14:15:02 +0000 (15:15 +0100)]
Extend rasterization testing, modify verification
dEQP-VK.rasterization.primitives.lines tests are extended to add tests
drawing vertical and horizontal lines.
Extend dEQP-VK.rasterization.primitives.lines and
dEQP-VK.rasterization.primitives_multisample_n_bit.lines to test at 258
resolution (a non power of two resolution).
The strict line verification coverage is modified to allow checking of
vertical and horizontal lines. Previously pixels in vertical or hori-
zontal lines were marked as partially covered and hence the test did
not detect whether the lines were rendered correctly or not.
Affects: dEQP-VK.rasterization.primitives*
Components: Vulkan
VK-GL-CTS Issue: 2062
Change-Id: Ifb76a44ba1ebdc97353bbd1a4b2552e415f2723d
(cherry picked from commit
d297d9af7e55da0b0377bec4b9c1eb9d7209a40b)
Samuel Iglesias Gonsálvez [Wed, 27 Nov 2019 10:06:54 +0000 (11:06 +0100)]
Check memory model support in volatile atomic tests
Volatile atomic tests were not checking vulkan memory model support.
Components: Vulkan
VK-GL-CTS issue: 2125
Affected tests:
dEQP-VK.spirv_assembly.*atomic*
Change-Id: I67557361e2df9fc057ab38a1104f66512a532cf0
(cherry picked from commit
5ded1abda3169e29a6116b6e6b53ce0b9a6d5ab2)
Mike Byrne [Mon, 13 May 2019 14:15:02 +0000 (15:15 +0100)]
Extend rasterization testing, modify verification
dEQP-VK.rasterization.primitives.lines tests are extended to add tests
drawing vertical and horizontal lines.
Extend dEQP-VK.rasterization.primitives.lines and
dEQP-VK.rasterization.primitives_multisample_n_bit.lines to test at 258
resolution (a non power of two resolution).
The strict line verification coverage is modified to allow checking of
vertical and horizontal lines. Previously pixels in vertical or hori-
zontal lines were marked as partially covered and hence the test did
not detect whether the lines were rendered correctly or not.
Affects: dEQP-VK.rasterization.primitives*
Components: Vulkan
VK-GL-CTS Issue: 2062
Change-Id: Ifb76a44ba1ebdc97353bbd1a4b2552e415f2723d
Piers Daniell [Wed, 13 Nov 2019 21:01:10 +0000 (14:01 -0700)]
Fix SFR swapchain test's implicit layout transitions
The Vulkan spec says that layout transitions done on peer bound
image memory requires the implementation to support
VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT and
VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT. The test never checked
for this capability and did implicit render pass layout
transitions anyway.
This CL updates the test to use an explicit layout transitions
on local aliases of the image when the implementation doesn't
support doing peer-to-peer transfer.
This CL also fixes a bug in the SFR rects definition in
VkBindImageMemoryDeviceGroupInfo to specify the correct number
of rectangles.
Affects:
dEQP-VK.wsi.win32.swapchain.render.*
dEQP-VK.wsi.win32.swapchain.modify.*
Components: Vulkan
VK-GL-CTS issue: 2094
Change-Id: I31b7099a6d5c4f11be83d6d14a5c02cca6408441
John Corbally [Thu, 7 Nov 2019 16:01:18 +0000 (16:01 +0000)]
Apply the same relaxed precision fix for interface_blocks.* to basic_type.*
Fix relaxed precision and no perspective dEQP tests
In the RelaxedPrecision case, change epsilon to 2e-3 for a 16-bit float.
In the NoPerspective case, change epsilon to 3e-7 for a 32-bit float.
The epsilon is now relative to the correct value.
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.cross_stage.basic_type.*
Components: Vulkan
VK-GL-CTS issue: 1818
Change-Id: I615e65f2f6e4287dc41ff981f18972cf14bcb374
Alexander Galazin [Wed, 20 Nov 2019 08:57:56 +0000 (09:57 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I32180e0d34325a28feb1795520f391bde55a9f4a
Piotr Byszewski [Mon, 4 Nov 2019 15:39:36 +0000 (16:39 +0100)]
Fix DeviceProperties in framework
VkPhysicalDeviceGroupProperties was incorrectly passed to
vkGetPhysicalDeviceProperties2, this change resolves that.
VK-GL-CTS issue: 2039
Components: Framework
Affects:
dEQP-VK.*
Change-Id: I1a23e9a02d657d1d227b439a21eefdbccd60e2ac
Juasheem Sultan [Fri, 1 Nov 2019 22:26:14 +0000 (15:26 -0700)]
Re-align importing dedicated memory to spec
Re-implemented importing dedicated memory for synchronization test to
better align with the Vulkan spec. The current solution
makes the assumption that not requiring memory to be dedicated upon
import implies that the memory is required to not be dedicated, and this
does not appear to align with the spec.
Affects:
* dEQP-VK.synchronization.signal_order.*
Components: Vulkan
VK-GL-CTS issue: 2071
Change-Id: Ie1ada8e4966e044ff0d265dce65f4a0680b311aa
Alexander Galazin [Mon, 18 Nov 2019 12:39:36 +0000 (13:39 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I7b0d8b4c46d43f765a8d53dbf7954d14f094c740
Chris Mayer [Fri, 8 Nov 2019 12:28:16 +0000 (13:28 +0100)]
Add memory barrier to VK transform_feedback tests
The transform feedback tests are reading the transform
feedback buffers which was written by the GPU from the
host. Added a memory barrier to make sure the data is up to
date when it is accessed by the host.
Affects: dEQP-VK.transform_feedback.*
Components: Vulkan
VK-GL-CTS issue: 2096
Change-Id: Ibf9f86e9c1f02bdbfe822f62c44c30155ed8c555
Alexander Galazin [Mon, 18 Nov 2019 11:28:51 +0000 (12:28 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: Idea5f48ee1eb6dfa2290d738cabff96c7e88daad
Alexander Galazin [Mon, 18 Nov 2019 10:06:07 +0000 (11:06 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I9adaa87d0bf5d06a12bfc2fcd4b8a30568cefb48
Alexander Galazin [Wed, 13 Nov 2019 15:17:52 +0000 (16:17 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I60cd40a3c62551b46dda9b40e75c914504430200
Mike Byrne [Fri, 1 Nov 2019 16:50:17 +0000 (16:50 +0000)]
Split descriptor set indexing render pass workload
The render pass workload for descriptor set indexing tests which call
DynamicBuffersInstance::iterate should be split into multiple
submissions to prevent timeouts observed in
dEQP-VK.descriptor_indexing.uniform_buffer_dynamic_in_loop
test.
A number (16) of command buffers, each for a separate render area, are
created and submitted separately.
Affects: dEQP-VK.descriptor_indexing*
Components: Vulkan
VK-GL-CTS Issue: 2061
Change-Id: Ib232854a1224aadbd63eaad30e15f893eeb48f85
Investigation for Khronos issue;
https://gitlab.khronos.org/Tracker/vk-gl-cts/issues/2061
Change-Id: Ib232854a1224aadbd63eaad30e15f893eeb48f85
Tom Cooper [Mon, 28 Oct 2019 15:04:36 +0000 (15:04 +0000)]
Reduce dEQP-VK.pipeline.render_to_image allocs to within platform limits
These tests allocate an image of upto 25% of VkMemoryHeap heapSize and
should be limited to the value in
PlatformMemoryLimits.totalSystemMemory.
Component: Vulkan
VK-GL-CTS Issue: 2087
Affects:
dEQP-VK.pipeline.render_to_image*
Change-Id: Ie7d775cc55fdb54e448fc1c973d1e17925711e47
Tom Cooper [Sat, 26 Oct 2019 18:14:42 +0000 (19:14 +0100)]
Fix descriptor_indexing.input_attachment subpass description
The input attachments in the subpass description did not match the
descriptor set layout and shader. Unused attachment references have
been inserted to pad out the subpass description.
Components: Vulkan
VK-GL-CTS Issue: 2072
Affects: dEQP-VK.descriptor_indexing.input_attachment*
Change-Id: Iab36be779007828ddb25fe0600305a19be448804
Alexander Galazin [Fri, 1 Nov 2019 14:05:53 +0000 (15:05 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I74696bcb3e23aa3e8bde59ebea3137b262dd1394
Alexander Galazin [Fri, 1 Nov 2019 11:16:47 +0000 (12:16 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: Ia5d78f0656fb1a2b2e4f989ba556edc3154856f7
Alexander Galazin [Thu, 31 Oct 2019 10:46:57 +0000 (11:46 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I17c7f6b8e25ecbcc9c93d5c47b70b5192ecdafd1
Dae Kim [Wed, 30 Oct 2019 12:32:17 +0000 (12:32 +0000)]
Add missing write to PointSize
The primitive topology is POINT_LIST for test cases covering the vertex
stage, but the vertex shader in these cases isn't supplying a value for
PontSize.
Affects:
dEQP-VK.binding_model.buffer_device_address.*.vert
Components: Vulkan
VK-GL-CTS issue: 2080
Change-Id: Ibbbeb143bf957f9494b1df84e69bc4a01c891c6a
John Corbally [Wed, 30 Oct 2019 11:14:45 +0000 (11:14 +0000)]
Fix missing image memory barrier in WSI display timing tests
The key part of the missing image memory barrier is changing
VK_IMAGE_LAYOUT_UNDEFINED to VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
(for the first time).
Affects: dEQP-VK.wsi.android.display_timing.*
Components: Vulkan
VK-GL-CTS issue: 2079
Change-Id: I79e142c9c2a602e066a51e69e3aca9a1d2c0e650
Alexander Galazin [Tue, 29 Oct 2019 13:08:53 +0000 (14:08 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: Ifab5c9546e3716fb1a8ccf00481e035da38aece9
Alexander Galazin [Fri, 25 Oct 2019 15:32:20 +0000 (17:32 +0200)]
Whitelist Vulkan CTS 1.2.0.2
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: I27af5ff562778d819542369d688ec081a76ab4aa
Alexander Galazin [Mon, 28 Oct 2019 15:18:03 +0000 (16:18 +0100)]
Add timelineSempahore to mandatory ext features
https://gitlab.khronos.org/vulkan/vulkan/merge_requests/3421
clarifies that timelineSemaphore is mandatory for
implementations exposing VK_KHR_timeline_semaphore
This CL updates the test to align with the MR.
Components: Vulkan
Affects: dEQP-VK.api.info.device.mandatory_features
Change-Id: I12f9c9e6b05a77109cb0207b748cc9ccfa872d9b
Alexander Galazin [Mon, 16 Sep 2019 13:05:09 +0000 (15:05 +0200)]
Update README to allow parallel execution
This change updates Vulkan CTS README to allow
parallel CTS execution and also outlines new
requirements for Conformance Submission Packages
collected from parallel runs.
Components: Vulkan
VK-GL-CTS issue: 1897
Change-Id: Iafe92c384bb5dbf79ccc0d3b3040c15dd6a25be8
(cherry picked from commit
9ce6b1eef0e87bbea4212b1c45d7686cd9fc5790)
Pawel Ksiezopolski [Tue, 15 Oct 2019 10:09:27 +0000 (12:09 +0200)]
Fixed mandatory caselist for parallel CTS run
Duplicate tests listed in deqp-fraction-mandatory-caselist-file
command line option are now skipped during test tree parsing,
when parallel CTS run is configured.
Components: Framework
VK-GL-CTS issue: 2053
Change-Id: I4ce2b6f33fd22c7ddc3aba0adbe9f7e761237e51
Pawel Ksiezopolski [Thu, 12 Sep 2019 07:25:57 +0000 (09:25 +0200)]
Add list of tests for each fraction of CTS parallel run
The tests may be split in groups for parallel execution
using commandline deqp-fraction parameter.
This commit adds possibility to perform a list of tests
for each such fraction.
To achieve this - user must use parameter
deqp-fraction-mandatory-caselist-file defining a file with
a list of tests. File vk-fraction-mandatory-tests.txt
defines a list of mandatory tests when parallel execution
is applied.
Components: Vulkan Framework
VK-GL-CTS issue: 1897
Change-Id: I684eb07c24bbf3aeaf3386f205658dfe07b9fe25
(cherry picked from commit
e93d85372840151db6833bfdebed30d4eca98d8d)
Pawel Ksiezopolski [Fri, 6 Sep 2019 11:55:26 +0000 (13:55 +0200)]
Move part of the dEQP-VK.api.info.* tests into new place
Moving dEQP-VK.api.info.device.* and
dEQP-VK.api.info.instance.* tests to dEQP-VK.info.*.
Affects tests:
dEQP-VK.api.info.*
dEQP-VK.info.*
Components: Vulkan
VK-GL-CTS issue: 1897
Change-Id: I89d61bf320e39ed4660f6ac3073a8c7372bd8b56
(cherry picked from commit
52a0c36de9780d2df046442bffeab876745d8de3)
Alexander Galazin [Mon, 28 Oct 2019 15:18:03 +0000 (16:18 +0100)]
Add timelineSempahore to mandatory ext features
https://gitlab.khronos.org/vulkan/vulkan/merge_requests/3421
clarifies that timelineSemaphore is mandatory for
implementations exposing VK_KHR_timeline_semaphore
This CL updates the test to align with the MR.
Components: Vulkan
Affects: dEQP-VK.api.info.device.mandatory_features
Change-Id: I12f9c9e6b05a77109cb0207b748cc9ccfa872d9b
(cherry picked from commit
33cc61974078e64d66e64ccf67ecc906f7a7f3fb)
Piotr Byszewski [Mon, 28 Oct 2019 13:48:55 +0000 (14:48 +0100)]
Remove redundant vk12 check in DrawIndirectTests
Components: Vulkan
Affects:
dEQP-VK.draw.indirect_draw.*
Change-Id: I87f40a8ef735a9423d5ba4799747985c6991a50b
Lionel Landwerlin [Tue, 15 Oct 2019 15:22:38 +0000 (18:22 +0300)]
Update VK_KHR_performance_query enumerate
Components: Vulkan
Affects: dEQP-VK.query_pool.performance_query.enumerate*
Change-Id: I443c1c9b7a1903063b27b77fc47cbb88259aa407
Piotr Byszewski [Wed, 16 Oct 2019 15:46:27 +0000 (17:46 +0200)]
Clean VK_KHR_timeline_semaphore checks
Components: Vulkan
VK-GL-CTS issue: 2051
Affects:
dEQP-VK.synchronization.cross_instance.*
dEQP-VK.synchronization.op.multi_queue.*
dEQP-VK.synchronization.timeline_semaphore.*
Change-Id: I5b8802187b8a2ee7b6251da55b6ac77dc3c43383
Alexander Galazin [Mon, 28 Oct 2019 18:50:41 +0000 (19:50 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I3dfd380679fa66f75d82d6fab18fa7d5e9305127
Pawel Ksiezopolski [Mon, 28 Oct 2019 14:03:51 +0000 (15:03 +0100)]
Remove deprecated std::bind2nd() call
std::bind2nd() was deprecated in C++11 and removed in C++17.
Affects:
dEQP-VK.descriptor_indexing.*
Components: Vulkan
VK-GL-CTS issue: 2074
Change-Id: I408a39ce9f1632515e3ff6bcfb95966e19aa4b22
Alexander Galazin [Sun, 27 Oct 2019 18:28:05 +0000 (19:28 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I1e9a1cb376ca0af986cd448d369fdc4c0be32209
Piers Daniell [Thu, 24 Oct 2019 14:47:48 +0000 (08:47 -0600)]
Fix the advancedBlendMaxColorAttachments limit check
According to the latest Vulkan 1.1 spec revision 126 the
minimum implementation required limit for
advancedBlendMaxColorAttachments is "1" and not the "4"
the test expects.
Affects:
dEQP-VK.api.info.vulkan1p2_limits_validation.ext_blend_operation_advanced
Components: Vulkan
VK-GL-CTS issue: 2070
Change-Id: Icd4bafedc9c36e9a7907d40507a56479fb65a085
John Anthony [Wed, 23 Oct 2019 15:48:19 +0000 (17:48 +0200)]
Adjust required limits for max*UpdateAfterBindInputAttachments
Affects: dEQP-VK.api.info.vulkan1p2_limits_validation.ext_descriptor_indexing
Components: Vulkan
VK-GL-CTS issue: 2020
Change-Id: I4379affa44bee33061ac2bb777e95f5bc6586458
Slawomir Cygan [Thu, 24 Oct 2019 15:45:28 +0000 (17:45 +0200)]
Add scissor matching renderArea to descriptor indexing tests
This fixes rendering outside of render area, what
is forbidden by spec.
This also fixes regression from
7b7ba4e0, where
looping the RenderPass caused workload execution time
to increase and trigger OS-specific device timeout.
Components: Vulkan
VK-GL-CTS Issue: 2069
Affects: dEQP-VK.descriptor_indexing.*
Change-Id: I40f665ff892d03004860583029eb393e09c1ae95
Alexander Galazin [Fri, 25 Oct 2019 16:08:28 +0000 (18:08 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I29e9c508144c70edd96aec27c6fde1e32f1c4149
Alexander Galazin [Fri, 25 Oct 2019 14:29:30 +0000 (16:29 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: Id21fae15bb0fad00a22e2d5798f958e6640804e2
Alexander Galazin [Fri, 25 Oct 2019 11:58:22 +0000 (13:58 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I58c329c990cacdb992c4c9be0b95cb65aa469a80
Piotr Byszewski [Fri, 4 Oct 2019 12:17:42 +0000 (14:17 +0200)]
VkPhysicalDeviceVulkan1{1,2}Features in framework
Use VkPhysicalDeviceVulkan11Features and
VkPhysicalDeviceVulkan12Features in DefaultDevice chain.
This change also adds Context::isDeviceFunctionalitySupported and
Context::isInstanceFunctionalitySupported methods that checks if
extension are available and if proper feature bit are set (when
needed).
Components: Framework
VK-GL-CTS issue: 2005
Affects:
dEQP-VK.*
Change-Id: I81cf677fe46ae5bd870fde37253e97bdfcc4ae3a
Arkadiusz Sarwa [Wed, 23 Oct 2019 15:15:12 +0000 (17:15 +0200)]
Fix incorrect assumption for pipeline cache hit
The test incorrectly assumes that adding a pipeline creation flag bit
VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT to only one pipeline
still should cause a cache hit. Fixed the problem by adding the
VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT flag bit to both pipelines.
Affects:
dEQP-VK.pipeline.creation_feedback.compute_tests.compute_stage
Components: Vulkan
VK-GL-CTS issue: 2068
Change-Id: Idb963219a4e894eee6a0bb3b1fc20797d5b0323e
Ricardo Garcia [Thu, 13 Jun 2019 09:43:52 +0000 (11:43 +0200)]
Enable validation layers for custom devices and instances
Honor the --deqp-validation=enable command line option in tests using
custom devices and instances.
Affected tests:
dEQP-VK.api.buffer.*
dEQP-VK.api.device_init.*
dEQP-VK.api.external.memory.*
dEQP-VK.api.info.*
dEQP-VK.api.object_management.*
dEQP-VK.api.version_check.*
dEQP-VK.compute.basic.*
dEQP-VK.compute.device_group.*
dEQP-VK.device_group.*
dEQP-VK.image.swapchain_mutable.*
dEQP-VK.memory.allocation.*
dEQP-VK.memory.device_group_allocation.*
dEQP-VK.multiview.*
dEQP-VK.pipeline.push_descriptor.*
dEQP-VK.protected_memory.*
dEQP-VK.robustness.*
dEQP-VK.sparse_resources.*
dEQP-VK.synchronization.basic.semaphore.*
dEQP-VK.synchronization.cross_instance.*
dEQP-VK.synchronization.internally_synchronized_objects.*
dEQP-VK.synchronization.op.multi_queue.*
dEQP-VK.synchronization.smoke.*
dEQP-VK.synchronization.win32_keyed_mutex.*
dEQP-VK.wsi.*
dEQP-VK.ycbcr.format.*
Components: Vulkan
VK-GL-CTS issue: 1831
Change-Id: I569f2362cfbc2446ba099d38da48d58be451ebeb
Alexander Galazin [Tue, 22 Oct 2019 17:00:27 +0000 (19:00 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I3cb15875a0283934251bddc35af68cab1c3394c5
Lionel Landwerlin [Wed, 16 Oct 2019 18:39:50 +0000 (21:39 +0300)]
Fix waitSemaphoreCount value in signal ordering tests
VK-GL-CTS Issue: 2059
Components: Vulkan
Affects: dEQP-VK.synchronization.signal_order.*timeline_semaphore.*
Change-Id: I25b86f1ae2b8e3650e061f9f2e345147c01419c6
Arkadiusz Sarwa [Thu, 17 Oct 2019 15:02:40 +0000 (17:02 +0200)]
Fix external memory import
Fix adds checking for flag
VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT
when external memory is being imported.
Affects:
dEQP-VK.synchronization.signal_order.*
Components: Vulkan
VK-GL-CTS issue: 2063
Change-Id: Iebc72ba0ed89ba3ca2b83a5b97d6b24ab7871edb
Matthew Netsch [Mon, 21 Oct 2019 15:58:29 +0000 (11:58 -0400)]
Fixes VS num instances assumption
Components: Vulkan
VK-GL-CTS Issue: 2022
Affects:
dEQP-VK.spirv_assembly.instruction.*
Change-Id: Ibb0a17d8843c03cd1cf15d2c5af1f547481e8452
Jeff Bolz [Fri, 18 Oct 2019 17:05:46 +0000 (12:05 -0500)]
Fix LAYOUT_UNDEFINED transitions in descriptor_indexing tests
Commit
7b7ba4e0 caused the UNDEFINED->COLOR layout transition to be applied four
times, corrupting 3/4 of the image. Change the tests to do the layout transition
once, right after the framebuffer is created.
VK-GL-CTS Issue: 2064
Components: Vulkan
Affects: dEQP-VK.descriptor_indexing.*
Change-Id: Ie599ba76ba75af6fee1f4163bd96ea2bd6e4c145
Alexander Galazin [Thu, 17 Oct 2019 20:13:33 +0000 (22:13 +0200)]
Whitelist Vulkan CTS 1.2.0.1
Components: Vulkan
Change-Id: Ic95049203b246c17b535d86fcaad2ee431c6b751
Alexander Galazin [Thu, 17 Oct 2019 18:33:19 +0000 (20:33 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I5955793c43464b3046180ca90c1a64fa0e9379b3
Alexander Galazin [Thu, 17 Oct 2019 17:58:35 +0000 (19:58 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I2aa94658d6c8b6543fd9c4899f7da481ba1120a1
Alexander Galazin [Thu, 17 Oct 2019 15:46:59 +0000 (17:46 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I0954d6799d7b0e4a527cd0fbbdcf61237ca7e9a7
Alan Baker [Sun, 25 Aug 2019 17:57:24 +0000 (13:57 -0400)]
Remove float16 derivatives tests
SPIR-V restricts derivatives to 32-floating point scalars and vectors
only.
Component: Vulkan
VK-GL-CTS Issue: 1931
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.float16.derivative_*.*
Change-Id: Icc5341e697b797045080cc55428dbc2c02d71def
(cherry picked from commit
436d6dd5e7a0c0811bf1b6059542d1cdbccb9566)
Alex Walters [Mon, 14 Oct 2019 16:32:12 +0000 (17:32 +0100)]
Make texture aniso basic self tests less sensitive
The tests cases first check with a fuzzy diff that the images are more
or less the same.
The second diff then checks with a standard image comparison + tolerance
that the images are not identical.
Some of IMG's implementations produce a closer image than the test is
currently expecting - we need to lower the tolerance from 0.05 to 0.02
in order for the diff algorithm to detect that the images are
different 'enough'.
Though there is no actual spec requirement, it is 'generally going to
be the case', for any implementation, that the images will have some
amount of difference. It is potentially useful to still have this test
inplace to check againsty aniso being accidently disabled in the tested
implementation, rather than remove it altogether.
Affects:
dEQP-VK.texture.filtering_anisotropy.basic.*
Components: Vulkan
VK-GL-CTS Issue: 2047
Change-Id: Ia9148e12172ac1c4757f5007e57b3a2b3a3434eb
Matthew Netsch [Fri, 4 Oct 2019 18:57:40 +0000 (14:57 -0400)]
Relaxes line rasterization tolerances
Components: Framework
VK-GL-CTS Issue: 2033
Affects:
dEQP-VK.rasterization.*
Change-Id: Ib41552b1bb6d9aa2b25d0cbc6f02d51ce997f4e3
Alexander Galazin [Thu, 17 Oct 2019 15:11:04 +0000 (11:11 -0400)]
Revert "Fixes VS num instances assumption"
This reverts commit
bac8df251bb6103d7844bfeacbb29bf14011b7cb.
Change-Id: I60aa83d860b0b11ec7fc58fb97806635a1eebdca
Piers Daniell [Fri, 6 Sep 2019 18:27:31 +0000 (12:27 -0600)]
Generate a non-zero exit code on test failure
If there are any failed tests, or the test run was not
compelte, the process will now generate EXIT_FAILURE (1)
instead of EXIT_SUCCESS (0).
Affects:
dEQP-VK.*
Components: Framework
VK-GL-CTS issue: 1982
Change-Id: I061d9a3b6703e1f23c48ce8a31e943744f915c92
(cherry picked from commit
cfa72a70ef8371eab29da003dbb4d932adba189a)
Alexander Galazin [Wed, 16 Oct 2019 13:01:00 +0000 (15:01 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: I01ffb4e6195d7754314ec4a72be0c03f595b6e02
Alexander Galazin [Wed, 16 Oct 2019 11:44:00 +0000 (13:44 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: Iea7706e036758d8a648ef7938b3d08e21321a087
Joerg Wagner [Wed, 9 Oct 2019 18:53:46 +0000 (20:53 +0200)]
Fix wrong wait stage mask
The wait stage mask wasn't accounting for the
stages the readers actually operate in, hence
being effectless.
Track the union of the reader's stage masks
and use that to block execution on the semaphore.
Affects:
dEQP-VK.synchronization.signal_order.*
Components: Vulkan
VK-GL-CTS issue: 2044
Change-Id: Ia4d5c7bcb9dd6eec25e7245dc41754acccd1b995
Panagiotis Apostolou [Thu, 10 Oct 2019 13:33:32 +0000 (15:33 +0200)]
Fix in shadercacheLoad
There is a slim chance that function shadercacheLoad() can pass a null
pointer into the std::string constructor, causing an exception. This can
happen in the case there is a mismatch between the calculated hash and
the one stored in the cache file.
This commit makes the code more robust, handling this case as a miss.
Components: Vulkan
VK-GL-CTS issue: 2052
Change-Id: I84a382dec51f487314304ec9057cefdff22920c3
Pawel Ksiezopolski [Wed, 9 Oct 2019 08:53:05 +0000 (10:53 +0200)]
Relax deviceName and deviceInfo string comparison
Change deMemCmp() to strncmp() for two char arrays in
VkPhysicalDeviceVulkan12Properties struct, so that we don't
compare bytes after null termination character.
Affects:
dEQP-VK.api.info.vulkan1p2.properties
Components: Vulkan
VK-GL-CTS issue: 2040
Change-Id: I312575c5b29705c1cb2010f2a2d247055680bf97
Alexander Galazin [Fri, 11 Oct 2019 10:13:41 +0000 (12:13 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: Ie09cc3cac8462a7669c3fa0c25edb40d8e05d062
Alexander Galazin [Fri, 11 Oct 2019 09:52:19 +0000 (11:52 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: Ibb2b736bbe1c62688044aa21dc75205f6fa32f1c
Alexander Galazin [Fri, 11 Oct 2019 09:50:16 +0000 (11:50 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I79fdf16146cf659aeae510fb6fb2ad72f641ba3e
Alexander Galazin [Fri, 11 Oct 2019 09:48:34 +0000 (11:48 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
Change-Id: Ia0d88c0631e427241c7795931a834d9baf43e5a3
Lionel Landwerlin [Fri, 27 Sep 2019 11:28:23 +0000 (14:28 +0300)]
Skip test with no display plane is available
Similarly to dEQP-VK.wsi.display.get_display_properties that skips
when no display available.
Components: Vulkan
Affects: dEQP-VK.wsi.display.get_display_plane_capabilities2
Change-Id: I46af976a9ba3e77e250504d0164dec6ac4cdd607
(cherry picked from commit
fd915c2d0ec7b544b670192447223061fe4b6cf3)
Piers Daniell [Thu, 5 Sep 2019 18:19:24 +0000 (12:19 -0600)]
Limit the apiVersion of the instance within the CTS framework
This CL allows older CTS tests to run on implementations that
support a newer instance version not supported by this version
of CTS.
The dEQP-VK.api.version_check.version test was modified to
fail if this version of CTS is run on an implementation
it does not support. This is to stop old CTS from passing
on newer implementations, where the newer CTS should have
been used.
Affects:
dEQP-VK.api.version_check.version
dEQP-VK.*
Components: Vulkan
VK-GL-CTS issue: 1979
Change-Id: I97cd17b0aae9b3cba7c2e000d21636ad37c1fd80
Alexander Galazin [Fri, 11 Oct 2019 08:45:43 +0000 (10:45 +0200)]
Fix SEMAPHORE_TYPE_TIMELINE enum
Components: Vulkan
Change-Id: Id4949383bed578436e321c621a8ff495157da895