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
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
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
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
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
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 [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)
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
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 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
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
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 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
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
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
Alexander Galazin [Fri, 11 Oct 2019 08:32:13 +0000 (10:32 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I6597defb9bda8c8e6393033bf444befd4b9301fb
John Corbally [Wed, 2 Oct 2019 16:31:55 +0000 (17:31 +0100)]
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.interface_blocks.*
Components: Vulkan
VK-GL-CTS issue: 1818
Change-Id: Id21382ce4b1cb58458ec3fb521630ab75e1910a3
Alexander Galazin [Thu, 10 Oct 2019 15:31:00 +0000 (17:31 +0200)]
Update glslang
Affects: dEQP-VK.binding_model.buffer_device_address.*
Components: Vulkan
VK-GL-CTS issue: 2046
Change-Id: I60e3579df3bb3f81732fec0c46803a97fc00953a
Peter Quayle [Wed, 9 Oct 2019 16:43:32 +0000 (17:43 +0100)]
Fixed flags used to select queue in dEQP-VK.synchronization.op.multi_queue
getDefaultQueue takes a VkQueueFlags argument and returns an appropriate VkQueue.
This function was being called with inappropriate arguments
causing the wrong queue to be returned. This could ultimately lead to work
being submitted to a queue which lacked support for it (e.g. graphics work
on a sparse queue).
Affects:
dEQP-VK.synchronization.op.multi_queue*
Components: Vulkan
VK-GL-CTS issue: 2043
Change-Id: I7887d1b4da8c916aed032433c6634c99b723f285
(cherry picked from commit
1bd32d3221dd65087de14ae061f798b78ac7ce0d)
Peter Quayle [Tue, 8 Oct 2019 16:35:04 +0000 (17:35 +0100)]
Fix semaphore creation in smoke tests
The test was calling createSemaphore instead of createSemaphoreType,
meaning that the semaphoreType value would incorrectly be interpreted
as a VkSemaphoreCreateFlags.
Additionally, the VkTimelineSemaphoreSubmitInfo struct was not being
added into the pNext chain of the submits. This probably went unnoticed
because the first bug could cause the test to use binary semaphores
even if semaphoreType was TIMELINE.
Affects:
dEQP-VK.synchronization.smoke.binary_semaphores
dEQP-VK.synchronization.smoke.timeline_semaphores
Components: Vulkan
VK-GL-CTS issue: 2041
Change-Id: I6936013b7f5a7e25f4af1fb4776d4d7273243d7a
(cherry picked from commit
a8238c0aa023c121f79f09c6565875e235292f27)
Mike Byrne [Mon, 30 Sep 2019 13:57:05 +0000 (14:57 +0100)]
Split descriptor set indexing render pass workload
The render pass workload for descriptor set indexing tests should be
split into multiple submissions to prevent timeouts observed in tests
for the VK_DESCRIPTOR_TYPE_SAMPLER,
VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER,
VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT,
VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER and
VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE descriptor types.
Affects: dEQP-VK.descriptor_indexing*
Components: Vulkan
VK-GL-CTS Issue: 2026
Change-Id: I3b4876ec204fe1c1ebf174e06328653f0a5532d3
Alexander Galazin [Thu, 10 Oct 2019 11:21:55 +0000 (13:21 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I288a90fcda0d3cbd7fbb1f8d622dee03f6b74f62
Alexander Galazin [Thu, 10 Oct 2019 09:38:02 +0000 (11:38 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: I45e2e3c52d89424f714c43c76fc2dd9aea2a793d
Chris Forbes [Wed, 25 Sep 2019 23:51:40 +0000 (16:51 -0700)]
Add feature requirements to existing amber files
Updates the amber files themselves to mirror the constraints enforced on the C++ side.
Components: Vulkan
Change-Id: I698a39732b02cb99fe1aeb369f1054ac9a769bfb
VK-GL-CTS: 1965
Chris Forbes [Thu, 29 Aug 2019 04:31:39 +0000 (21:31 -0700)]
Add variable pointers requirement for vktSpvAsmPtrAccessChainTests
These tests did not check for the variablePointers feature they need.
Components: Vulkan
VK-GL-CTS Issue: 1965
Affects: dEQP-VK.spirv_assembly.instruction.compute.ptr_access_chain.*
Change-Id: Ied75a1c5661755549cc599b2397a18345bc727f9
Matthew Netsch [Fri, 4 Oct 2019 21:09:39 +0000 (17:09 -0400)]
Fixes VS num instances assumption
Components: Vulkan
VK-GL-CTS Issue: 2022
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.variable_pointers.graphics.writes*
Change-Id: Ie1d784733774ae357698cf8a5672fcccdb0c1e1e
Alexander Galazin [Wed, 9 Oct 2019 07:12:17 +0000 (09:12 +0200)]
Remove unnecessary initializers
Components: Vulkan
Affects: dEQP-VK.glsl.shader_clock.*
Change-Id: I4526c05cdd5464f26450bba67f573b467881f4ff
Igor Ostrowski [Thu, 26 Sep 2019 13:09:28 +0000 (15:09 +0200)]
Check timeline semaphore features only when used.
Affects:
dEQP-VK.synchronization.op.multi_queue.*
Components: Vulkan
VK-GL-CTS issue: 2025
Change-Id: I8c586bcb0199ab00fe6fffb9290abd2b06523916
(cherry picked from commit
c20bf2e3023cb209ae3ec04b6e6339f8c3930dfb)
Alexander Galazin [Tue, 8 Oct 2019 17:28:47 +0000 (19:28 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
Change-Id: I44be4e273707047428a95e8243734259c859fe0a
Alexander Galazin [Tue, 8 Oct 2019 14:24:57 +0000 (16:24 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
Change-Id: Ifd05cb161b5f393a1d5539f18a1d521482a2039f
Piers Daniell [Fri, 4 Oct 2019 21:15:21 +0000 (15:15 -0600)]
Whitelist newly supported VK_KHR* extensions in CTS 1.1.5
The following extensions are now supported by
vulkan-cts-1.1.5.2:
- VK_KHR_timeline_semaphore
- VK_KHR_shader_clock
Affects:
dEQP-VK.api.info.device.extensions
Change-Id: I6fc4bbc5ab95557ac83c8ff8172679a343d46b23
Components: Vulkan
Eric Werness [Fri, 16 Nov 2018 21:50:40 +0000 (13:50 -0800)]
Support Python3 as well in gen_release_info.py
The CMake file version check can end up picking python3 in some cases -
making the Python code compatible with python3 seems easier than
adjusting the version check.
Components: Frameworks
Change-Id: Iab37090ab813dcb7839490225ca2a4bf2f721c12
Aaron Hagan [Mon, 20 May 2019 19:22:08 +0000 (15:22 -0400)]
Add tests for VK_KHR_shader_clock
Affects:
dEQP-VK.glsl.shader_clock.*
Components: Vulkan
VK-GL-CTS issue: https://gitlab.khronos.org/Tracker/vk-gl-cts/issues/1758
(cherry picked from commit
9de5b8e48869ab025ed11982c6362e7f7082115f)
Change-Id: Iaca2d845ffb7a3037cee0c9cf38ff4844e7c9a48
Lionel Landwerlin [Wed, 11 Sep 2019 16:17:24 +0000 (19:17 +0300)]
Fix print of uninitialized value
Just fixing a printout in the result file.
Change-Id: Id1b4d3ee9879a07f452c5f5a0310a16d72051848
(cherry picked from commit
2d48a5baf07daeabeca8412ca6ff56d9ac92e2ca)
Lionel Landwerlin [Tue, 10 Sep 2019 11:36:19 +0000 (14:36 +0300)]
Add signal ordering tests
We want to verify that the signaling of semaphores in multiple
VkSubmitInfo a vkQueueSubmit() is ordered.
Add tests:
dEQP-VK.synchronization.signal_order.*
Change-Id: Ibf47e7e4105f479ab33b5bafeda3efdd4c2782b5
(cherry picked from commit
70ed33e49cd109a494b85a0daeb73ff40d3157f9)
Lionel Landwerlin [Fri, 1 Mar 2019 17:03:15 +0000 (17:03 +0000)]
Add tests for VK_KHR_timeline_semaphore
Renames existing semaphore tests from .*semaphore.* into .*binary_semaphore.*
Affects: dEQP-VK.synchronization.*
Change-Id: I48173432da6410a609c0d2000f21c379d4a64429
Components: Vulkan
(cherry picked from commit
a86d535bb75d21445df66cdfcce0b9dc79c37604)
Jari Komppa [Wed, 31 Jul 2019 10:29:15 +0000 (13:29 +0300)]
Speed up hierarchy traversal, part 2
Some of the tests do premature heavy work during test hierarchy
traversal, meaning that they waste time regardless of whether the tests
are run or not. These changes move some of that work to later stage of
test run, or otherwise speed things up a bit.
Affects:
dEQP-VK.pipeline.stencil.*
dEQP-VK.synchronization.cross_instance.*
dEQP-VK.synchronization.op.multi_queue.*
dEQP-VK.transform_feedback.fuzz.*
Components: Vulkan
VK-GL-CTS issue: 1830
Change-Id: I1c124cbf17068e56375ef2e467036e959cde8aa4
(cherry picked from commit
41527af467623bae596b2bd319b0694c11f8cbf8)
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