platform/upstream/VK-GL-CTS.git
4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoFix DeviceProperties in framework
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

4 years agoRe-align importing dedicated memory to spec
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoAdd memory barrier to VK transform_feedback tests
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoSplit descriptor set indexing render pass workload
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

4 years agoReduce dEQP-VK.pipeline.render_to_image allocs to within platform limits
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

4 years agoFix descriptor_indexing.input_attachment subpass description
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoAdd missing write to PointSize
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

4 years agoFix missing image memory barrier in WSI display timing tests
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoWhitelist Vulkan CTS 1.2.0.2
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

4 years agoAdd timelineSempahore to mandatory ext features
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

4 years agoUpdate README to allow parallel execution
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)

4 years agoFixed mandatory caselist for parallel CTS run
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

4 years agoAdd list of tests for each fraction of CTS parallel run
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)

4 years agoMove part of the dEQP-VK.api.info.* tests into new place
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)

4 years agoAdd timelineSempahore to mandatory ext features
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)

4 years agoRemove redundant vk12 check in DrawIndirectTests
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

4 years agoUpdate VK_KHR_performance_query enumerate
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

4 years agoClean VK_KHR_timeline_semaphore checks
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoRemove deprecated std::bind2nd() call
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoFix the advancedBlendMaxColorAttachments limit check
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

4 years agoAdjust required limits for max*UpdateAfterBindInputAttachments
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

4 years agoAdd scissor matching renderArea to descriptor indexing tests
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
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

4 years agoVkPhysicalDeviceVulkan1{1,2}Features in framework
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

4 years agoFix incorrect assumption for pipeline cache hit
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

4 years agoEnable validation layers for custom devices and instances
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoFix waitSemaphoreCount value in signal ordering tests
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

4 years agoFix external memory import
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

4 years agoFixes VS num instances assumption
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

4 years agoFix LAYOUT_UNDEFINED transitions in descriptor_indexing tests
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

4 years agoWhitelist Vulkan CTS 1.2.0.1
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
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

4 years agoRemove float16 derivatives tests
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)

4 years agoMake texture aniso basic self tests less sensitive
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

4 years agoRelaxes line rasterization tolerances
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

4 years agoRevert "Fixes VS num instances assumption"
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

4 years agoGenerate a non-zero exit code on test failure
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)

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
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

4 years agoFix wrong wait stage mask
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

4 years agoFix in shadercacheLoad
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

4 years agoRelax deviceName and deviceInfo string comparison
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.2 into vk-gl-cts/vulkan-cts-1.1.3
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

4 years agoSkip test with no display plane is available
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)

4 years agoLimit the apiVersion of the instance within the CTS framework
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

4 years agoFix SEMAPHORE_TYPE_TIMELINE enum
Alexander Galazin [Fri, 11 Oct 2019 08:45:43 +0000 (10:45 +0200)]
Fix SEMAPHORE_TYPE_TIMELINE enum

Components: Vulkan

Change-Id: Id4949383bed578436e321c621a8ff495157da895

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
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

4 years agoFix relaxed precision and no perspective dEQP tests
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

4 years agoUpdate glslang
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

4 years agoFixed flags used to select queue in dEQP-VK.synchronization.op.multi_queue
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)

4 years agoFixed flags used to select queue in dEQP-VK.synchronization.op.multi_queue
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

4 years agoFix semaphore creation in smoke tests
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)

4 years agoFix semaphore creation in smoke tests
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

4 years agoSplit descriptor set indexing render pass workload
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
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

4 years agoShare device across synchronization tests (again)
Jeff Bolz [Mon, 30 Sep 2019 14:06:29 +0000 (09:06 -0500)]
Share device across synchronization tests (again)

This change reverts the deletion of this logic in the cross_instance
tests, and ports the logic to the new timeline semaphore tests.

Components: Vulkan
Affects: dEQP-VK.synchronization.cross_instance.*
Affects: dEQP-VK.synchronization.timeline_semaphore.*
Affects: dEQP-VK.synchronization.signal_order.*
Change-Id: I6dec095a8314aea3062f2ad532a4b4bdede398eb

4 years agoAdd feature requirements to existing amber files
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

4 years agoAdd variable pointers requirement for vktSpvAsmPtrAccessChainTests
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

4 years agoFixes VS num instances assumption
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

4 years agoCheck extension limits
Boris Zanin [Thu, 26 Sep 2019 08:57:58 +0000 (10:57 +0200)]
Check extension limits

Add extension limits validaty check. The tests are per-extention.

Add tests:
 * dEQP-VK.api.info.vulkan1p2_limits_validation.khr_push_descriptor
 * dEQP-VK.api.info.vulkan1p2_limits_validation.khr_multiview
 * dEQP-VK.api.info.vulkan1p2_limits_validation.ext_discard_rectangles
 * dEQP-VK.api.info.vulkan1p2_limits_validation.ext_sample_locations
 * dEQP-VK.api.info.vulkan1p2_limits_validation.ext_external_memory_host
 * dEQP-VK.api.info.vulkan1p2_limits_validation.ext_blend_operation_advanced
 * dEQP-VK.api.info.vulkan1p2_limits_validation.khr_maintenance_3
 * dEQP-VK.api.info.vulkan1p2_limits_validation.ext_conservative_rasterization
 * dEQP-VK.api.info.vulkan1p2_limits_validation.ext_descriptor_indexing
 * dEQP-VK.api.info.vulkan1p2_limits_validation.ext_inline_uniform_block
 * dEQP-VK.api.info.vulkan1p2_limits_validation.ext_vertex_attribute_divisor
 * dEQP-VK.api.info.vulkan1p2_limits_validation.nv_mesh_shader
 * dEQP-VK.api.info.vulkan1p2_limits_validation.ext_transform_feedback
 * dEQP-VK.api.info.vulkan1p2_limits_validation.fragment_density_map
 * dEQP-VK.api.info.vulkan1p2_limits_validation.nv_ray_tracing
 * dEQP-VK.api.info.vulkan1p2_limits_validation.timeline_semaphore
 * dEQP-VK.api.info.vulkan1p2_limits_validation.ext_line_rasterization

Rename and update test:
 * dEQP-VK.api.info.vulkan1p2.limits_validation
to
 * dEQP-VK.api.info.vulkan1p2_limits_validation.general
Components: vulkan

VK-GL-CTS issue: 2008

Change-Id: I5350ef499ba70e0194d360008a893209242a28a8

4 years agoRemove unnecessary initializers
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Alexander Galazin [Tue, 8 Oct 2019 17:58:13 +0000 (19:58 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0

Change-Id: I3a4a19f9d8bba49c51d01cc6f07fda4ceb496b45

4 years agoCheck timeline semaphore features only when used.
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)

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.4 into vk-gl-cts/vulkan-cts-1.1.5
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

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.3 into vk-gl-cts/vulkan-cts-1.1.4
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

4 years agoWhitelist newly supported VK_KHR* extensions in CTS 1.1.5
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

4 years agoSupport Python3 as well in gen_release_info.py
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

4 years agoAdd tests for VK_KHR_shader_clock
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

4 years agoFix print of uninitialized value
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)

4 years agoAdd signal ordering tests
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)

4 years agoAdd tests for VK_KHR_timeline_semaphore
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)

4 years agoSpeed up hierarchy traversal, part 2
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)

4 years agoShare instance/device across test case instances in dEQP-VK.synchronization.*
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)

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Alexander Galazin [Thu, 3 Oct 2019 15:33:04 +0000 (17:33 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0

Change-Id: Idcd78cbc60325522a070c7c777317f0d811377c7

4 years agoFix 64bit type promotions in subgroup tests
Piotr Byszewski [Fri, 27 Sep 2019 14:00:31 +0000 (16:00 +0200)]
Fix 64bit type promotions in subgroup tests

VK-GL-CTS issue: 1948
Components: Vulkan

Affects:
dEQP-VK.subgroups.*.ext_shader_subgroup_ballot.*

Change-Id: I7b8a1a8979bb16f1f4f4fcfd8579c764aa3820f0
(cherry picked from commit 57e251b094d00ad5332e1500af9cbfb490dcbe90)

4 years agoWhitelist Vulkan CTS 1.1.5.2
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

4 years agoExtended: texel_view_compatible: image: fix image coord
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

4 years agoAccount for precision loss in unorm depth pipeline
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)

4 years agouvec2 tests for VK_KHR_buffer_device_address
Jeff Bolz [Tue, 24 Sep 2019 22:01:10 +0000 (17:01 -0500)]
uvec2 tests for VK_KHR_buffer_device_address

Add variants of the 'convert' tests that convert to and from uvec2
rather than uint64_t.

Components: Vulkan
VK-GL-CTS Issue: 2018

Affects: dEQP-VK.binding_model.buffer_device_address.*
Change-Id: I9e1a2f031e295b9200faff571aae2fc5cbb9005c

4 years agoMerge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Alexander Galazin [Tue, 1 Oct 2019 11:21:46 +0000 (13:21 +0200)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0

Change-Id: Iac0fcad25eac20577e603b022f59b4f87cb9055a