Matthew Netsch [Wed, 31 Mar 2021 15:08:41 +0000 (11:08 -0400)]
Fixes Fragment Shading Rate layered tests
Test was exporting Layer and ViewportIndex
decorations in Vertex Shader in the
Geometry Shader tests without checking
for support.
Components: Vulkan
VK-GL-CTS Issue: 2865
Affects:
dEQP-VK.fragment_shading_Rate.srlayered.*.gs
dEQP-VK.fragment_shading_Rate.colorlayered.*.gs
Change-Id: Idbf6be2c14bb8409feec2d7262efb9a402cf35a2
Neslisah Torosdagli [Sat, 27 Mar 2021 03:27:06 +0000 (23:27 -0400)]
Fix insufficient BLAS indirect buffer size
BLAS indirect buffer size is not set correctly. It is set to
sizeof(VkAccelerationStructureBuildRangeInfoKHR) however
geometries number times sizeof(VkAccelerationStructureBuildRangeInfoKHR)
indirect buffer space is needed.
Components: Vulkan
https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/2862
Affects: dEQP-VK.ray_tracing_pipeline.indirect.build_structure
Change-Id: I2b5df039aac6c3f2a51177c8bf9f5095ae5c7886
Sławomir Cygan [Tue, 16 Mar 2021 16:07:16 +0000 (17:07 +0100)]
Allow false positive hits from build-in AABBs intersector
This change allows the test to execute any hit shader,
in case of AABB geometry is used and the ray falsely 'intersects'
it.
This is needed, as the test does not calculate the proper
intersection in 'intersection' stage - it uses a shader that always
reports TRUE. Hence the test relies on build-in AABB
intersector, which may report false positives according to the
specification.
VK-GL-CTS Issue: 2848
Components: Vulkan
Affects: dEQP-VK.ray_tracing_pipeline.build.*aabbs*
Change-Id: Ib90f45227a7cd4c412fd4d1c97598f32a80eb6ca
Sławomir Cygan [Tue, 16 Mar 2021 15:40:21 +0000 (16:40 +0100)]
Remove the tests with too large device AS build workload
This removes the tests that submit accelleration structure
builds with 1048576 instances * geometries * 'squares'.
The accelleation structure builds performed by these tests
were too long and may hit the device timeout imposed by
the operating system.
Components: Vulkan
VK-GL-CTS Issue: 2849
Removed Tests:
dEQP-VK.ray_tracing_pipeline.build.gpu*_1_1_1048576
dEQP-VK.ray_tracing_pipeline.build.gpu*_1_1048576_1
dEQP-VK.ray_tracing_pipeline.build.gpu*_1_1048576_1
dEQP-VK.ray_tracing_pipeline.build.gpu*_4_4_65536
dEQP-VK.ray_tracing_pipeline.build.gpu*_4_65536_4
dEQP-VK.ray_tracing_pipeline.build.gpu*_65536_4_4
Change-Id: Ief53cc01da4f749fd8a030bd8e2ebb5652208ce4
Alexander Galazin [Wed, 17 Mar 2021 15:26:27 +0000 (18:26 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: If51e7d93c6b84f7d3fde339f35ae351d8443a7ce
Alexander Galazin [Wed, 17 Mar 2021 14:28:28 +0000 (17:28 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: Id84d297899a981b1fae39d923280446925730cd0
Alexander Galazin [Wed, 17 Mar 2021 13:01:48 +0000 (16:01 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Change-Id: I6bad956acaf784565692e1ea539a219064deed57
Alexander Galazin [Wed, 17 Mar 2021 12:14:31 +0000 (15:14 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Change-Id: I64b979022925b98680602154ad32b13080a04871
Alexander Galazin [Wed, 17 Mar 2021 11:33:21 +0000 (14:33 +0300)]
Merge vk-gl-cts/vulkan-cts-1.1.6 into vk-gl-cts/vulkan-cts-1.2.1
Change-Id: If6077d356659193696b2e41c318b5bda2f5ca1d1
Alexander Galazin [Mon, 22 Feb 2021 09:14:11 +0000 (10:14 +0100)]
Update Vulkan/GL Readme
Update the Readme files to point to the new
submission verifcation script
Components: Vulkan, OpenGL
Change-Id: I6fb35a383fcc49e543ae67822be22d744c5fcd9c
(cherry picked from commit
412f5a3363eb228ca1a63be337de172a2e622571)
Alexander Galazin [Mon, 15 Mar 2021 15:50:59 +0000 (18:50 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I07fc25f375c0228279e54582fc909876a370d251
Alexander Galazin [Mon, 15 Mar 2021 14:58:34 +0000 (17:58 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I78e06ea1256567bd761e1ffa5678338eb1f7aa85
Alexander Galazin [Mon, 15 Mar 2021 14:09:42 +0000 (17:09 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Change-Id: I15d9b2b0dbaab175d891a824c190198bbcda1b20
Alexander Galazin [Mon, 15 Mar 2021 12:55:47 +0000 (15:55 +0300)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Change-Id: Iccb63bb8842b2d3b8ae22b78853a0534500aebdf
Ari Suonpaa [Mon, 22 Feb 2021 12:30:21 +0000 (14:30 +0200)]
Update Amber
Amber was updated to include a fix for Vulkan pointer
loading that broke CTS when using Vulkan 1.0 device.
VK-GL-CTS Issue: 2802
Affects: All Amber tests
Components: Vulkan, Framework
Change-Id: I2ceaa8b569112f2e32e8a3a4e74d82ef1e4d0a67
(cherry picked from commit
e3a5a50e44c4d078d8fd2b97c6a9b4fecc97d1ce)
Paul Thomson [Wed, 3 Mar 2021 12:29:11 +0000 (12:29 +0000)]
Fix bad merge in DeqpTestRunner.java
Components: Android
Change-Id: Ib557d85deb85dc528fde2765e8c6442bffe67fc4
Sławomir Cygan [Fri, 26 Feb 2021 12:34:23 +0000 (13:34 +0100)]
Fix reordering vertices in geometry shader in ray_query AS test
This fixes the shader to write reordered vertice data into sequential
(unordered) store image indices
The change from
48f12336 was incomplete and misses the change to
the image store indices.
Components: Vulkan
VK-GL-CTS Issue: 2764
Affects: dEQP-VK.ray_query.acceleration_structures.*.geometry_shader.*
Change-Id: Ifd51d77e94c607e860e5c9efdefe2cb5a5ee97ff
Marcin Kańtoch [Thu, 25 Feb 2021 16:23:31 +0000 (17:23 +0100)]
Fix source blit image size
Changed the way source blit image size is calculated,
so that in all circumstances width > 0 and height > 0.
Affects:
dEQP-VK.memory.pipeline_barrier.host_read_transfer_dst.1024
Components: Vulkan
VK-GL-CTS issue: 2816
Change-Id: Id23a8e613b013e9e40b0075822b80c78b9ca418c
Matthew Netsch [Wed, 3 Mar 2021 22:21:05 +0000 (17:21 -0500)]
Adds local multi device present mode support check
Test calls vkGetPhysicalDevicePresentRectanglesKHR even if
driver does not support
VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR
Components: Vulkan
VK-GL-CTS Issue: 2828
Affects:
dEQP-VK.wsi.wayland.surface.query_devgroup_present_modes
Change-Id: I91ac8d2820318d1553e28fe71a4d2488a0fead5d
Alastair Donaldson [Thu, 11 Feb 2021 18:12:41 +0000 (18:12 +0000)]
Update dEQP test runner
Updates the dEQP test runner to account for the
android.software.opengles.deqp.level feature flag. This generalises
the logic that previously checked whether a Vulkan test list should be
skipped depending on the value of the analogous Vulkan feature flag.
Bug:
169021525
Change-Id: I00e04b6cda698c0649e4dcd2923e87156539e5c0
Alastair Donaldson [Wed, 10 Feb 2021 13:00:21 +0000 (13:00 +0000)]
Add Android test lists for OpenGL ES
Adds two new test lists for each of OpenGL ES 2.0, OpenGL ES 3.0 and
OpenGL ES 3.1, corresponding to dEQP snapshots for Android
versions. The full master test lists for OpenGL ES are no longer run
by default.
Bug:
169021525
Change-Id: I86eea5263f074fa8e6b826e7ded458953ebfb17c
Alastair Donaldson [Tue, 9 Feb 2021 15:42:03 +0000 (15:42 +0000)]
Add new Vulkan test list and update test list generation
Adds a test list capturing the Vulkan dEQP tests frozen for Android
11, and changes the test list generator to use this list.
Due to various tests having been renamed or removed, list generation
does not yet work.
Bug:
169021525
Change-Id: Icab9e25d1acc24d121feacdf8720d14e8db69d91
Piotr Byszewski [Wed, 17 Feb 2021 11:07:56 +0000 (12:07 +0100)]
Fix custom device creation for synchronization2
Some synchronization tests created custom device without
enabling all used features. This change fixes that.
Components: Vulkan
VK-GL-CTS issue: 2734
Affects:
dEQP-VK.synchronization*.basic.*.multi_queu*
dEQP-VK.synchronization*.op.multi_queue.*
dEQP-VK.synchronization*.cross_instance.*
Change-Id: Ib2c062967608c5348e5b0a5edabd310574900632
Tom Cooper [Fri, 19 Feb 2021 11:45:10 +0000 (11:45 +0000)]
Fix dEQP-VK.synchronization* to not duplicate primary command buffers in a VkSubmitInfo
Several tests in dEQP-VK.synchronization* call a helper which adds a
primary command buffer to the submit info, then use a queue submit
helper which adds the same command buffer again.
Components: Vulkan
VK-GL-CTS Issue: 2798
Affects:
dEQP-VK.synchronization*.op.multi_queue.fence.*
Change-Id: Id84f9c327ff6bc54af331c4bdb95167b2958dcd0
Neslisah Torosdagli [Mon, 22 Feb 2021 23:14:50 +0000 (18:14 -0500)]
Fix inconsistent primitive count issue
Number of primitives added to the geometries were larger than number of primitives initialized in the shader. This change fixes that.
Components: Vulkan
VK-GL-CTS issue: 2800
Affects: dEQP-VK.ray_tracing_pipeline.indirect.build_structure
Change-Id: I50634a2f58281284b093c599d7fe965e347aac02
Alexander Galazin [Fri, 19 Feb 2021 07:57:06 +0000 (08:57 +0100)]
Allow Vulkan CTS 1.2.5.2
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: If42924ce4919dfc372e5e107dc8e9e86d27bbe2b
Sławomir Cygan [Mon, 15 Feb 2021 14:35:21 +0000 (15:35 +0100)]
Do not use image index and semaphore when vkAcquireNextImageKHR fails
This change follows
d9763f6a0, where vkAcquireNextImageKHR was allowed
to fail with VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT error.
However, the (not) acquired image index and semaphore was still used,
causing fauilure when validating the index.
This change skips using the image index and semaphore, when image was
not acquired.
Moreover, failure to acquire the image is logged as quality warning.
VK-GL-CTS Issue: 2792
Affects: dEQP-VK.wsi.*.full_screen_exclusive.*
Components: Vulkan
Change-Id: I7c970289769fd56c9f46ac27cc6d23180e847d74
Sławomir Cygan [Wed, 10 Feb 2021 15:48:43 +0000 (16:48 +0100)]
Allow failure of creating swapchain with application controlled full-screen exclusive mode
The spec says:
"""
In some cases, swapchain creation may fail if exclusive full-screen mode is
requested for application control, but for some implementation-specific reason
exclusive full-screen access is unavailable for the particular combination of
parameters provided. If this occurs, VK_ERROR_INITIALIZATION_FAILED will be returned.
"""
This modifies the test to allow VK_ERROR_INITIALIZATION_FAILED error from
vkCreateSwapchain, when VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT
mode is requested. QalityWarning result is returned if swapchain creation fails.
Components: Vulkan
VK-GL-CTS Issues: 2787
Affects: dEQP-VK.wsi.win32.full_screen_exclusive.*
Change-Id: I78f976b9d08338c49a81199410aecc50089ffce3
Sławomir Cygan [Tue, 16 Feb 2021 15:39:46 +0000 (16:39 +0100)]
Workaround for entrypoints tests requiring vendor entrypoints while checking KHR extension
This is a workaround for dEQP-VK.api.version_check.entry_points test
requiring vkCmdWriteBufferMarker2AMD and vkGetQueueCheckpointData2NV
entrypoints when checking the VK_KHR_synchronization2 extension.
The true problem is full dependency information is not available to code
generating scripts, which only source vulkan_core.h. (vulkan_core.h seems to
have 1:1 mapping from extenions to entrypoints, having above NV and AMD
entrypoint listed under VK_KHR_synchronization2).
Such information is encoded in registry XML, currently not used by the code
generating script.
As a workaround do not generate code for entrypoints that have different
vendor suffix than the extension they belong to.
Affects: dEQP-VK.api.version_check.entry_points
VK-GL-CTS Issue: 2795
Components: Vulkan
Change-Id: I5b345c36a49c585263d309ed4645b16a144c327e
Sławomir Cygan [Wed, 10 Feb 2021 13:40:11 +0000 (14:40 +0100)]
Fix extended dynamic state to not access out of bounds memory
The test assumed const size (4096) of the storage backing the
vectors of vertices. It looks like the vector of 'reversed' vertices
was fully populated only when TRIANGLES topology was used,
so the test may crash on other topologies.
Components: Vulkan
VK-GL-CTS Issue: 2786
Affects: dEQP-VK.pipeline.extended_dynamic_state.*
Change-Id: Ic56d3125335d2eef0c97028d855b27eae25da24f
Marcin Kantoch [Wed, 3 Feb 2021 18:47:17 +0000 (19:47 +0100)]
Fix out of memory error on 32bit driver builds
Limit the ammount of RT invocations on 32 bit
driver builds, so that the result buffer does
not exceed 2GB.
Components: Vulkan
VK-GL-CTS issue: 2716
Affects:
dEQP-VK.ray_tracing_pipeline.misc.maxrtinvocations_*
Change-Id: I73711e45c5bc589c1d5e5e742da817c11b3215fa
Alexander Galazin [Thu, 18 Feb 2021 20:02:43 +0000 (21:02 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I86306b5aa0993a5d552f777fa3320d2ab288e2b6
Alexander Galazin [Thu, 18 Feb 2021 16:34:52 +0000 (17:34 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I766af2bb2951e57b4425b3b948d0f2773fe1fb6d
Matthew Netsch [Wed, 3 Feb 2021 22:28:29 +0000 (17:28 -0500)]
Fixes cubic filtering rgb9e5 tests
Test was causing overflows
Components: Framework
VK-GL-CTS Issue: 2771
Affects:
*
Change-Id: I3367d18dab3207442d93adb757db24c16543f6d8
Alexander Galazin [Thu, 18 Feb 2021 13:21:22 +0000 (14:21 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: Ib6563915d7ca253c6d1275b08134d63df7f58204
Alexander Galazin [Thu, 18 Feb 2021 12:41:44 +0000 (13:41 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Change-Id: I3e2556116ad51d257d5605321813461dc3096df1
Alexander Galazin [Thu, 18 Feb 2021 11:59:20 +0000 (12:59 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Change-Id: Ic40e8dc5399b4abedbc4663d67431e5dee093d29
Anders Pedersen [Thu, 10 Dec 2020 09:36:01 +0000 (10:36 +0100)]
Remove renderingComplete test
There is no guarantee that two consecutive frames with
no frame dependencies will not complete out of order.
Components: EGL
Affects: dEQP-EGL.functional.get_frame_timestamps
Test: atest CtsDeqpTestCases
Bug: https://issuetracker.google.com/
174941611
Change-Id: Ia70b92be27e301e94e936d9465a6e9dc9ec38928
Piotr Byszewski [Fri, 27 Nov 2020 10:44:40 +0000 (11:44 +0100)]
Test new pipeline stages from synchronization2
With this change some of SynchronizationOperations
will use new pipeline stages when they are executed
for synchronization2. Additionaly few new operations
were added to cover new stages.
Components: Vulkan
VK-GL-CTS issue: 2663
Affects:
dEQP-VK.synchronization.*
dEQP-VK.synchronization2.*
Change-Id: I6ccfbc9ec28d70035369c6f064a786c408c3afdd
Piotr Byszewski [Fri, 27 Nov 2020 10:44:40 +0000 (11:44 +0100)]
Generalize SynchronizationOperations for sync2
This change generalize all barriers executed in
SynchronizationOperations that were missed while adding
support for VK_KHR_synchronization2.
Components: Vulkan
VK-GL-CTS issue: 2365
Affects:
dEQP-VK.synchronization.*
dEQP-VK.synchronization2.*
Change-Id: I67f6e2753373bd34d0aef0f3313c1d8993a60169
Piotr Byszewski [Fri, 20 Nov 2020 15:49:14 +0000 (16:49 +0100)]
Use MemoryBarrier2 in SubpassDependency2 chain
VK_KHR_synchronization2 allows VkMemoryBarrier2KHR to be
provided in the pNext chain of a VkSubpassDependency2.
Components: Vulkan
VK-GL-CTS issue: 2365
New tests:
dEQP-VK.renderpass2.suballocation.subpass_dependencies.external_subpass.*_sync_2
Affects:
dEQP-VK.renderpass*
Change-Id: I0f7a7cb76064b0e6e565e1f716e2acd0e17c7041
Piotr Byszewski [Fri, 3 Jul 2020 10:26:21 +0000 (12:26 +0200)]
New tests for VK_KHR_synchronization2
This change adds none_stage tests that exercise PIPELINE_STAGE_NONE
as well as MEMORY_ACCESS_READ|WRITE_BIT and new generic layouts.
Event tests were also extends to test GPU-only scenarios using new
VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR.
Components: Vulkan
VK-GL-CTS issue: 2365
New tests:
dEQP-VK.synchronization2.basic.event.*_device_only
dEQP-VK.synchronization2.none_stage.*
Affects:
dEQP-VK.synchronization*
Change-Id: I86e056054a6541526140fd15fb53bef9359b6b28
Piotr Byszewski [Thu, 30 Jul 2020 10:57:44 +0000 (12:57 +0200)]
Synchronization2 - fix set/wait event usage
CmdWaitEvents2KHR valid usage states that: "For any element i of
pEvents, if that event is signaled by vkCmdSetEvent2KHR, that
commands dependencyInfo parameter must be exactly equal to the
ith element of pDependencyInfos".
Components: Vulkan
VK-GL-CTS issue: 2365
Affects:
dEQP-VK.synchronization*.op.single_queue.event.*
dEQP-VK.synchronization*.basic.event.single_submit_multi_command_buffer
Change-Id: Id9a4b5270ddb3ae9cb582e084e65c41c18c9c5c7
Alexander Galazin [Mon, 15 Feb 2021 19:07:27 +0000 (20:07 +0100)]
Generalize synchronization tests
This change adds SynchronizationWrapper utility class that enables to
execute most of synchronization tests for both legacy synchronization
and for functionality changes introduced by VK_KHR_synchronization2.
Components: Vulkan
VK-GL-CTS issue: 2365
Affects:
dEQP-VK.synchronization*
Change-Id: Ibc12c144387cb6c45f6545963183a9cf6c00988d
Marcin Kantoch [Wed, 3 Feb 2021 15:06:01 +0000 (16:06 +0100)]
Fix for primitiveOffset calculation
PrimitiveOffset should be an offset in bytes into the memory
where primitive data is defined.
Components: Vulkan
VK-GL-CTS issue: 2765
Affects:
dEQP-VK.ray_tracing_pipeline.indirect.build_structure
Change-Id: I03da8a69f042f6f21556dc23ae992495fda5cff4
Sławomir Cygan [Mon, 8 Feb 2021 15:45:00 +0000 (16:45 +0100)]
Properly handle VK_OPERATION_NOT_DEFERRED_KHR
According to spec, any operation that is requested to be deferred can return
VK_OPERATION_NOT_DEFERRED_KHR if an implementation "chooses not to
defer any of the requested operations and instead executesall of them
immediately"
This fixes the test to properly handle the VK_OPERATION_NOT_DEFERRED_KHR status,
by immediately checking the operation status and returning, skipping invalid check
for max concurency being greater than 0 and skipping not needed thread joins.
Components: Vulkan
VK-GL-CTS Issue: 2780
Affects:
dEQP-VK.ray_tracing_pipeline.*host_threading*
dEQP-VK.ray_query.*host_threading*
dEQP-VK.ray_tracing_pipeline.*cpuht*
Change-Id: If72351e2deada8d03c3e7b2c642cb641ae69febd
Sławomir Cygan [Tue, 9 Feb 2021 15:33:58 +0000 (16:33 +0100)]
Process Windows messages after showing a window
This makes sure all window messages are delivered and processed
when showing / hiding a window or making it topmost.
Affects: dEQP-VK.wsi.win32.full_screen_exclusive.*
VK-GL-CTS Issue: 2784
Components: Vulkan, Framework
Change-Id: Idcf677d7ea22695e7548fcaf31f75814e4b5e15e
Caio Marcelo de Oliveira Filho [Fri, 29 Jan 2021 04:33:37 +0000 (20:33 -0800)]
Fix buffer size in manual zeroing Workgroup aliased memory
The buffer A needs to be large enough to fit the largest case when
using the smallest type, which is an array of uint8_t to cover an
array of 4 struct {dvec4, dvec4}. Update the buffer size to properly
cover the entire array.
Component: Vulkan
VK-GL-CTS Issue: 2524
Affected tests:
- dEQP-VK.compute.workgroup_memory_explicit_layout.zero.*
Change-Id: I098b037314fb87fbe03769a0a4fe79edcf46143e
Caio Marcelo de Oliveira Filho [Fri, 29 Jan 2021 04:27:51 +0000 (20:27 -0800)]
Fix missing check for Float64 in manual zeroing Workgroup aliased memory
Test was relying on useType() helper, but it was not filling
needsFloat64 properly. The other tests using the helper are not
affected.
Component: Vulkan
VK-GL-CTS Issue: 2524
Affected tests:
- dEQP-VK.compute.workgroup_memory_explicit_layout.zero.*
Change-Id: I87f718988da5091860c98cbe0708d4d4c1d72b9d
Caio Marcelo de Oliveira Filho [Wed, 13 Jan 2021 22:14:33 +0000 (14:14 -0800)]
Add VK_KHR_workgroup_memory_explicit_layout OpCopyMemory tests
Component: Vulkan
VK-GL-CTS Issue: 2524
New Tests: dEQP-VK.compute.workgroup_memory_explicit_layout.copy_memory.*
Change-Id: I78287969904b67df21cf4f8f56935961a22cd6eb
Caio Marcelo de Oliveira Filho [Sat, 5 Dec 2020 05:08:57 +0000 (20:08 -0900)]
Add VK_KHR_workgroup_memory_explicit_layout maximum size tests
Dynamic generation of shaders based on properties reported by devices
is not allowed in the CTS, and in this case we can't use a
specialization constant as the array size. So the test have a few
variants with common maximum values.
Component: Vulkan
VK-GL-CTS Issue: 2524
New Tests: dEQP-VK.compute.workgroup_memory_explicit_layout.size.*
Change-Id: Ic960d22277b0a7bff428eae99e1f3107d9b4c85e
Caio Marcelo de Oliveira Filho [Thu, 3 Dec 2020 05:14:34 +0000 (20:14 -0900)]
Add VK_KHR_workgroup_memory_explicit_layout padding tests
Component: Vulkan
VK-GL-CTS Issue: 2524
New Tests: dEQP-VK.compute.workgroup_memory_explicit_layout.padding.*
Change-Id: I81d46940a785913faddb5e78dae986e2de9f73ee
Caio Marcelo de Oliveira Filho [Tue, 1 Dec 2020 22:07:37 +0000 (13:07 -0900)]
Add VK_KHR_workgroup_memory_explicit_layout zeroing aliased block tests
Components: Vulkan, Framework
VK-GL-CTS Issue: 2524
New Tests: dEQP-VK.compute.workgroup_memory_explicit_layout.zero.*
Change-Id: I935ddc9f2a8d79e0c454a70f07e1f355d1236fc9
Caio Marcelo de Oliveira Filho [Tue, 4 Aug 2020 04:34:34 +0000 (21:34 -0700)]
Add VK_KHR_workgroup_memory_explicit_layout type aliasing tests
Component: Vulkan
VK-GL-CTS Issue: 2524
New Tests: dEQP-VK.compute.workgroup_memory_explicit_layout.alias.*
Change-Id: I17ebda4ca8fd750aa5e64f750220c91f8c789dbc
Caio Marcelo de Oliveira Filho [Thu, 4 Feb 2021 19:28:32 +0000 (11:28 -0800)]
Add new ShaderBuildOption to enable Workgroup scalar offsets
This need to be explicitly set in the SPIR-V validator and it is
independent of the use of scalar offsets in other storage classes.
Equivalent to --workgroup-scalar-block-layout option in spirv-val.
Components: Vulkan
Affects: dEQP-VK.*
Change-Id: I903d4c700a08d7b03ccbd3f82274379c6bd6455e
(cherry picked from commit
147bbb57041f6e243966e18d67887eac3baf9b4f)
Alan Baker [Wed, 10 Jun 2020 19:07:24 +0000 (15:07 -0400)]
VK_KHR_zero_initialize_workgroup_memory tests
* New tests for VK_KHR_zero_initialize_workgroup_memory tests
Component: Vulkan
VK-GL-CTS Issue: 2415
New Tests: dEQP-VK.compute.zero_initialize_workgroup_memory.*
Change-Id: If775749596cedb1a5d4937d084d5e191c2707152
(cherry picked from commit
2b917b4caa105f4c7fd69a95ab9ea72a9d140068)
Joshua Ashton [Wed, 15 Jul 2020 03:44:27 +0000 (04:44 +0100)]
Add tests for VK_EXT_4444_formats
Components: Vulkan
New tests:
dEQP-VK.*.a4b4g4r4*
dEQP-VK.*.a4r4g4b4*
Change-Id: I5d597a718246e4bc0af3c6acee1c0d3d0787997b
Joshua Ashton [Wed, 15 Jul 2020 03:34:34 +0000 (04:34 +0100)]
Add support for ABGR texture formats
Needed for VK_EXT_4444_formats
Components: Vulkan Framework
Affects: *
Change-Id: I1f4a4e555d69da3d14df2ce34ad46526cb570911
Alexander Galazin [Wed, 3 Feb 2021 14:13:17 +0000 (15:13 +0100)]
Update glslang
Components: Framework
Change-Id: Icc780bd3e4ebe3448db0a917920b4be91c3696de
(cherry picked from commit
5ea40881588ca29706ffae7f5eb52374cd615e19)
Piotr Byszewski [Wed, 27 Jan 2021 13:40:25 +0000 (14:40 +0100)]
Fix memory scope in OpControlBarrier tests
Workgroup Memory Scope is not allowed in TessellationControl
execution model (VUID-StandaloneSpirv-None-04639). This change
replaces Workgroup memory scope with Invocation scope.
Components: Vulkan
Affects:
dEQP-VK.spirv_assembly.instruction.graphics.barrier.*
Change-Id: Icf2e950a68528f1959a2fefd86dffdde97e150c5
(cherry picked from commit
e2d8f37eae4ae9a798690ac677b1e865438d76a9)
Alexander Galazin [Thu, 4 Feb 2021 11:13:21 +0000 (12:13 +0100)]
Update Vulkan headers
Components: Vulkan
Change-Id: I602e747504df841f7100b1638a0011bb10a6a4ca
(cherry picked from commit
53245fa58703ebbbd59ac06dffdb0c3052308d36)
Slawomir Cygan [Thu, 28 Jan 2021 15:06:30 +0000 (16:06 +0100)]
Allow geometry shader to reorder vertices in dEQP-VK.ray_query.acceleration_structures test
This fixes the geometry shader used in the test to allow gl_in[] to start from
arbitrary vertex from the triangle primitive.
According to spec:
"""
24.1. Geometry Shader Input Primitives
...
Vertices may be in a different absolute order to that specified by the topology,
but must adhere to the specified winding order.
"""
The test does some ray query computation in geometry shader, using elements
of gl_in[] as inputs, and storing the outputs in consecutive pixels of storage image.
The test than verifies the image contents using some predefined vertex order.
As gl_in is not queranteed to follow this order, vertex index from vertex shader is now
used to calculate starting index, from which gl_in is iterated.
Components: Vulkan
VK-GL-CTS Issue: 2764
Change-Id: I1b6b8df3166d40132747a7315366c427e32b0007
Affects: dEQP-VK.ray_query.acceleration_structures.*.geometry_shader.*
Alexander Galazin [Fri, 12 Feb 2021 11:30:41 +0000 (12:30 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: Ib86e71eaf31e327f0f2ebc1951dd3d155f9c5fa6
Charles Johnston [Thu, 28 Jan 2021 13:48:26 +0000 (08:48 -0500)]
Fix size calculation for compressed 3D textures
Affected tests:
dEQP-VK.texture.compressed_3D.*
Components: vulkan
VK-GL-CTS issue: 2761
Change-Id: I2d062233a5bb3611bc9c24697da198a4710dc0e1
Bas Nieuwenhuizen [Mon, 1 Feb 2021 19:05:03 +0000 (20:05 +0100)]
Set correct access flags for buffer copy synchronization.
Since the copy depends on the result of the blit, we should make
the results visible to the copy with VK_ACCESS_TRANSFER_WRITE_BIT.
Components: Vulkan
Affects: dEQP-VK.drm_format_modifiers.export_import.*
Change-Id: I8a9a94657203472ca8842db0cc164c71c087a48c
Alexander Galazin [Thu, 28 Jan 2021 19:40:35 +0000 (20:40 +0100)]
Allow Vulkan CTS 1.2.5.1
Components: Vulkan
Affects: dEQP-VK.api.driver_properties.properties
Change-Id: I7ca8bb2937e1e601f58fe5a7220138a1a06a2ca5
Marcin Kańtoch [Thu, 14 Jan 2021 18:11:49 +0000 (19:11 +0100)]
Fixed dEQP-VK.wsi.*.full_screen_exclusive.* tests
Full list of fixes described in the issue.
Components: Vulkan
VK-GL-CTS issue: 2746
Affects:
dEQP-VK.wsi.*.full_screen_exclusive.*
Change-Id: I787fb775a1b3a88c6308d1ab8a7f37d11fa9a049
Alexander Galazin [Thu, 28 Jan 2021 13:17:50 +0000 (14:17 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: Ia3c9ad282501c58a5d05b8b28163babe42686dcf
Alexander Galazin [Thu, 28 Jan 2021 10:53:33 +0000 (11:53 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: I57c045028692ccdead9ceecdc0f6421874413a11
Alexander Galazin [Thu, 28 Jan 2021 10:02:12 +0000 (11:02 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Change-Id: I866350c03d9b27e87b39653aef4415f326e2510a
Alexander Galazin [Thu, 28 Jan 2021 08:20:40 +0000 (09:20 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Change-Id: Id4b318d832da2ccfbc5a72523454eb39a23d2a2c
Alastair Donaldson [Wed, 1 Apr 2020 15:48:46 +0000 (16:48 +0100)]
Account for aliasing exceptions in codegen
Fixes a problem where functions for which aliasing exceptions are in
place (at present this is just glRenderbufferStorageMultisampleEXT)
were not being treated properly in code generation -- their aliased
names were being erroneously used.
Component: Framework
Affects: dEQP-GLES*multisample*
VK-GL-CTS issue: 2291
Change-Id: I5e9caf8828b192d15bb3c91f53a9d09aa9442129
Alexander Galazin [Tue, 19 Jan 2021 08:43:57 +0000 (09:43 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: Ib85f3f1d09837872f49aac5a12faa47711f85c60
Alexander Galazin [Tue, 19 Jan 2021 07:52:28 +0000 (08:52 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: If89eb86767d45eebe9d5b2009d7e3e8d34c549d4
Jeff Bolz [Tue, 23 Jun 2020 04:11:08 +0000 (23:11 -0500)]
VK_KHR_fragment_shading_rate tests
New tests: dEQP-VK.fragment_shading_rate.*
Affects: dEQP-VK.fragment_shader_interlock.*
Components: Vulkan
VK-GL-CTS Issue: 2397
Change-Id: I776d80f671e14610f9206bc2e1e696d3a49cc121
(cherry picked from commit
f04111312c90f2e3db79bc3eacc692ab2fe028b0)
Piotr Byszewski [Mon, 23 Nov 2020 09:48:06 +0000 (10:48 +0100)]
Disable conflicting fragment shading rate features
Features of VK_EXT_fragment_density_map and VK_NV_shading_rate_image cannot
be enabled at the same time as features of VK_KHR_fragment_shading_rate.
Instead if the VK_KHR_fragment_shading_rate features are enabled then
disable the VK_EXT_fragment_density_map and VK_NV_shading_rate_image features
and use a temporary device with them enabled for testing.
Components: Vulkan, Framework
VK-GL-CTS Issue: 2665
Affects: *
Change-Id: I544c021ed963bd453635283282a6a272383e448e
(cherry picked from commit
05c7485f7970f363e0fd2781cec980b95c3d3714)
Alexander Galazin [Mon, 7 Dec 2020 13:47:52 +0000 (14:47 +0100)]
Update Vulkan headers
Components: Vulkan
Change-Id: Ic1bb4c95c106a29b966997bfcd8b6d7054983ecf
(cherry picked from commit
b904bd812fcb17f0810b8e6203db1f9c367c39e0)
Slawomir Cygan [Mon, 28 Dec 2020 14:48:20 +0000 (15:48 +0100)]
Move image to optimal layout before using it in renderpass in synchronization tests
This fixes 'write_clear_attachments' operation, where newly created image, while
still being in UNDEFINED layout was used in renderpass, that starts from
DEPTH_STENCIL_OPTIMAL layout.
This fixes regression introduced in
2e2e79bd.
Components: Vulkan
VK-GL-CTS Issue: 2709
Affects: dEQP-VK.synchronization.*write_clear_attachments*
Change-Id: I2e2f587ce5fbe928b6146f349cd37a645661645f
Slawomir Cygan [Wed, 23 Dec 2020 14:15:54 +0000 (15:15 +0100)]
Fix indexing of SBT entries in dEQP-VK.ray_tracing_pipeline.shader_binding_table test
There are few variants of this test ("hit", 'miss", "call"). Only "hit" and "call" variants prepare
per-geometry-instance shader hit groups, while "miss" variant prepares only
one hit group in the shader binding table.
At the same time, in the accelleration strucures, all variants advance
instanceShaderBindingTableRecordOffset per instance of geometry. This makes "miss" variant
to index incorrect records in the shader binding table.
Specification says:
"The application must organize the contents of the shader binding table’s memory in
a way that application of the indexing rules will lead to correct records."
To avoid overrunning the shader binding table, instanceShaderBindingTableRecordOffset should
be always 0 in "miss" test variant.
VK-GL-CTS Issue: 2706
Affects: dEQP-VK.ray_tracing_pipeline.shader_binding_table.*
Components: Vulkan
Change-Id: I72870fc6ac6627522aaaa0fd9d2a3736001f44c1
Charles Johnston [Thu, 7 Jan 2021 15:00:48 +0000 (10:00 -0500)]
Fix heap read out of bounds in RenderPass tests.
Pass the correct size of the buffer to uploadBufferData.
Affected tests:
dEQP-VK.renderpass*.attachment_allocation.*
dEQP-VK.renderpass*.suballocation.*
Components: Vulkan
VK-GL-CTS issue: 2708
Change-Id: Ib498be09f1c8437e8080c5b5f3a12d8b7a25a262
Slawomir Cygan [Wed, 23 Dec 2020 16:31:06 +0000 (17:31 +0100)]
Allow geometry shader to reorder vertices in dEQP-VK.ray_query.ray_flags.geometry_shader.* test
This fixes the geometry shader used in the test to allow gl_in[] to start from
arbitrary vertex from the triangle primitive.
According to spec:
"""
24.1. Geometry Shader Input Primitives
...
Vertices may be in a different absolute order to that specified by the topology,
but must adhere to the specified winding order.
"""
The test does some ray query computation in geometry shader, using elements
of gl_in[] as inputs, and storing the outputs in consecutive pixels of storage image.
The test than verifies the image contents using some predefined vertex order.
As gl_in is not queranteed to follow this order, vertex index from vertex shader is now
used to calculate starting index, from which gl_in is iterated.
Components: Vulkan
VK-GL-CTS Issue: 2707
Affects: dEQP-VK.ray_query.ray_flags.geometry_shader.*
Change-Id: I81029d88f5b1f3462a8c5058298ee8a850020d06
Alexander Galazin [Fri, 18 Dec 2020 16:43:18 +0000 (17:43 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: Icb5e7e25ae6236ae1fd13216514d4a414dfaed44
Alexander Galazin [Fri, 18 Dec 2020 09:48:33 +0000 (10:48 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: Ie4a7bdf8b1e7b9579112a21a4dbefec8dd20687a
Alexander Galazin [Fri, 18 Dec 2020 08:49:46 +0000 (09:49 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Change-Id: Ib199c6c60ed14c4549a90ad19dcb20a7a5ad1a27
Alexander Galazin [Fri, 18 Dec 2020 08:06:05 +0000 (09:06 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.1 into vk-gl-cts/vulkan-cts-1.2.2
Change-Id: I2321a93eaa56abbe87c87680aedd8ceb76b645e1
Alexander Galazin [Thu, 17 Dec 2020 15:03:09 +0000 (16:03 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.0 into vk-gl-cts/vulkan-cts-1.2.1
Change-Id: If26f7fae4e13aff58e233680c755db99879644b3
Alexander Galazin [Thu, 17 Dec 2020 14:10:25 +0000 (15:10 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.6 into vk-gl-cts/vulkan-cts-1.2.1
Change-Id: I3ed8d5f4de16750c664e4c8908b8b971f48f7593
Alexander Galazin [Thu, 17 Dec 2020 13:21:47 +0000 (14:21 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.1.6
Change-Id: I004160d9169fcb42a928c10d76b5355dd671e5a8
Alexander Galazin [Thu, 17 Dec 2020 13:20:59 +0000 (14:20 +0100)]
Merge vk-gl-cts/vulkan-cts-1.1.5 into vk-gl-cts/vulkan-cts-1.2.0
Change-Id: Ie1ff8e21a9cffae5e0616204ff3416e490ca0637
Ricardo Garcia [Fri, 6 Nov 2020 12:14:27 +0000 (13:14 +0100)]
Avoid advertising disabled robustness2 features
Make sure getRobustness2FeaturesEXT does not advertise a feature as
enabled when, in fact, the feature has been disabled when creating the
default test device in the context. This is consistent with the behavior
that was in place for robustBufferAccess.
In addition, disable image robustness in the default device, to be
consistent with the existing behavior for robustness2 features and
robustBufferAccess.
This means robustness2 and image robustness tests needed to be modified
to stop relying on feature checks from the context, like using
getRobustness2FeaturesEXT, because those will now be reported as not
enabled. In other words, feature getters from the context report
features that are *enabled* on the default device, and not features that
are merely available.
In addition, make robustness2 and image robustness tests use separate
devices when enabling image robustness or robustness2 features, so as to
run image robustness tests without any robustness2 feature.
In addition, require and enable the scalar block layout feature, which
is used to compile every shader in this test group.
Affected tests:
dEQP-VK.robustness.robustness2.*
dEQP-VK.robustness.image_robustness.*
Components: Vulkan
VK-GL-CTS issue: 2634
VK-GL-CTS issue: 2643
Change-Id: I641c0f6f659a89bd12a36da175358d3edc2dfeae
(cherry picked from commit
cea5003e0f519dff9d9ce6805a4994ebfde5e4f2)
Liam Middlebrook [Wed, 9 Dec 2020 23:17:26 +0000 (15:17 -0800)]
Fix build for Unices without CLOCK_MONOTONIC_RAW
CLOCK_MONOTONIC_RAW was introduced in Linux 2.6.28 and glibc 2.12. In
order to build the CTS on non-Linux Unices or older Linux distros we
should only compile-in usage of CLOCK_MONOTONIC_RAW when it is available
at build-time.
Components: Vulkan
VK-GL-CTS issue: 2696
Affects:
dEQP-VK.pipeline.timestamp.calibrated.host_domain_test
Change-Id: I937d4ea6350fe0b70c0028d9ae48b9234e425fdf
Robert Morell [Thu, 10 Dec 2020 01:23:48 +0000 (17:23 -0800)]
vktRayTracingMiscTests.cpp: abs -> fabsf
Fixes these errors building for FreeBSD 10.4 with llvm60:
/root/nvt/tests/buildvulkancts/vk-gl-cts/external/vulkancts/modules/vulkan/ray_tracing/vktRayTracingMiscTests.cpp:2248:11: error: call to 'abs' is ambiguous
if (abs(currentItem.dataChunk.at(nItem) - static_cast<float>(nRay + nItem)) > 1e-3f)
^~~
/usr/include/stdlib.h:83:6: note: candidate function
int abs(int) __pure2;
^
/usr/include/c++/v1/cstdlib:159:44: note: candidate function
inline _LIBCPP_INLINE_VISIBILITY long abs( long __x) _NOEXCEPT {return labs(__x);}
^
/usr/include/c++/v1/cstdlib:161:44: note: candidate function
inline _LIBCPP_INLINE_VISIBILITY long long abs(long long __x) _NOEXCEPT {return llabs(__x);}
^
VK-GL-CTS issue: 2696
Components: Vulkan
Affects:
dEQP-VK.ray_tracing_pipeline.misc.callableshaderstress*
Change-Id: I0be12116f368d02251a7b1d6a560d1ff898f78dd
Robert Morell [Thu, 10 Dec 2020 02:08:40 +0000 (18:08 -0800)]
oglcts-runner: Include cstdlib in glcTestRunnerMain
To pick up the definitions of EXIT_SUCCESS/EXIT_FAILURE.
Fixes these errors building on FreeBSD 10.4 with llvm60:
/root/nvt/tests/buildvulkancts/vk-gl-cts/external/openglcts/modules/runner/glcTestRunnerMain.cpp:115:19: error: use of undeclared identifier 'EXIT_SUCCESS'
int exitStatus = EXIT_SUCCESS;
^
/root/nvt/tests/buildvulkancts/vk-gl-cts/external/openglcts/modules/runner/glcTestRunnerMain.cpp:136:19: error: use of undeclared identifier 'EXIT_FAILURE'
exitStatus = EXIT_FAILURE;
^
Components: OpenGL
VK-GL-CTS issue: 2696
Change-Id: I918f3de12dde8871df8905f5870c3d6c73ae8048
(cherry picked from commit
a3087b1818e7310757304574da1e021e9578438b)
Alexander Galazin [Thu, 10 Dec 2020 14:07:11 +0000 (15:07 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: I90d7ded1d0fb76225a2f07354b76f1111bca7e2b
Alexander Galazin [Thu, 10 Dec 2020 13:30:11 +0000 (14:30 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: Ifc19d39f8f561171fabb3598587dec9822e37dc2
Alexander Galazin [Thu, 10 Dec 2020 11:04:34 +0000 (12:04 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.2 into vk-gl-cts/vulkan-cts-1.2.3
Change-Id: I71fc9c2f2a1132010379b79b0ca2445f57c5055c
Alexander Galazin [Thu, 10 Dec 2020 10:19:36 +0000 (11:19 +0100)]
Remove cov-fold-div-uniform-by-zero
The test relies on undefined behavior
Components: Vulkan
VK-GL-CTS issue: 2691
Affects: dEQP-VK.graphicsfuzz.cov-fold-div-uniform-by-zero
Change-Id: Id5703afdf8aeb544b601184b91463a5cf0a7c532
Joerg Wagner [Sat, 5 Dec 2020 12:12:10 +0000 (13:12 +0100)]
Fix instance creation
Pass parameters in the right order when
creating a temporary instance to allow
tests to be skipped when features are not
supported.
Affects: dEQP-VK.api.external.semaphore.sync_fd.import_signaled_temporary
Affects: dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.*
Components: Vulkan
VK-GL-CTS issue: 2689
Change-Id: Iba9490debc4870f158b30295930783e2291c4f77
Alexander Galazin [Wed, 9 Dec 2020 12:37:57 +0000 (13:37 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.4 into vk-gl-cts/vulkan-cts-1.2.5
Change-Id: Id23124bcd500db5ddbc6da9beb2f94239d52cd55
Alexander Galazin [Wed, 9 Dec 2020 09:57:03 +0000 (10:57 +0100)]
Merge vk-gl-cts/vulkan-cts-1.2.3 into vk-gl-cts/vulkan-cts-1.2.4
Change-Id: Icdf3698545ae26c2b9c2bcbd1d7adcfc2a14fc28